2015-11-07 76 views
2

我試圖爲我的應用程序獲取oauth標記。我跟着this tutorial但我得到的錯誤是這樣的:Twitter rest api request_token Issue

{ 
    "errors": [ 
    { 
     "code": 32, 
     "message": "Could not authenticate you." 
    } 
    ] 
} 

這裏是我的簽名基本字符串:

POST&https%3A%2F%2Fapi.twitter.com%2Foauth%2Frequest_token&oauth_callback%3Drntwttr%3A%2F%2Ftwitter&oauth_consumer_key%3DzvWr0ySiGLedBLvFM4CZgW6ut&oauth_nonce%3D144692544640700&oauth_signature_method%3DHMAC-SHA1&oauth_timestamp%3D1446921846&oauth_version%3D1.0 

這裏是我的Authorization頭值:

OAuth oauth_callback="rntwttr%3A%2F%2Ftwitter", oauth_consumer_key="zvWr0ySiGLedBLvFM4CZgW6ut", oauth_nonce="144692544640700", oauth_signature="%2BHGWye0I4QeBbHWYiJnXhHJGPn4%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1446921846", oauth_version="1.0" 

我加密我與我的消費者密鑰和祕密簽名的基本字符串:

var key = 'myConsumerKey&myConsumerSecret'; 
var signature = CryptoJS.HmacSHA1(signature_without_sha, key); 
var _signature = signature.toString(CryptoJS.enc.Base64); 

這裏有什麼問題?回調URL:rntwttr://twitter

回答

1

您已經構建了您的簽名密鑰不正確驗證您的基本字符串。所以簽名密鑰只是

consumer_secret&token_secret 

在獲得請求令牌的情況下,你沒有一個令牌密鑰尚未: 簽名密鑰是通過結合消費者的祕密和與符號之間令牌機密形成消費者機密後跟一個&符號:

consumer_secret& 

在上面的代碼中,您將消費者密鑰與消費者密鑰相結合,導致授權錯誤。

+0

ahhhh!謝謝 ! –