2010-04-11 83 views
0

當試圖通過Oauth使用Twitter登錄時,我總是收到401。Twitter Oauth GMT/BST問題

我使用twitter_oauth-0.3.3在軌OAuth的0.3.6

它曾經很好地工作,前一段時間,所以一些挖後,我意識到這可能是與我的時區。

在Twitter的響應報頭,其中之一是:

date: 
- Sun, 11 Apr 2010 16:53:34 GMT 

即使時間居然是17時53分34秒BST

我假設請求正在使用BST簽署時間,所以它失敗了。

任何人有這個問題/找到一個修復它?

回答

0

簽名中使用的OAuth時間戳記格式爲epoch time格式。

您可能要檢查Authorization請求頭,檢查是否有oauth_timestamp,並檢查你用這個有用online tool發送什麼。

您的時代與Twitter的差異(您在回覆中得到的結果如您所寫)應該在+ - 300秒的框架內。

希望有幫助!

+0

謝謝,事實證明,請求產生時,計算時間不正確。 – 2010-08-11 15:38:17

0

那麼,如果時間是17:53:34 BST,那麼它確實是 16:53:34 GMT。

所以,如果你正在使用的OAuth庫無法與服務器指定在不同的時區的時間應付(你一定這是什麼造成的問題),那麼它可能是在一個錯誤圖書館。

(不是很有幫助,我知道 - 我不使用ruby,也沒有自己做過任何oauth開發。)您是否嘗試過聯繫圖書館開發人員?