2013-04-04 130 views
0

適用類型:移動, 鈦SDK:3.0.2.GA, 平臺&版本:Android的4.0.4, 設備:Android的的Xperia P,嘰嘰喳喳jsOAuth獲取請求令牌返回401錯誤

我試圖通過jsOAuth 1.3.6使用twitter API。直到我獲取請求令牌(oAuthApi.fetchAccessToken()方法)之前,所有OAuth舞蹈都順利進行。爲什麼我總是會得到「未經授權」的錯誤?請參閱下面

oAuthApi.fetchRequestToken(function(data) { 
        //authorize 
        var authorizeUi = Ti.UI.createWebView({ 
         width : Ti.UI.FILL, 
         height : Ti.UI.FILL, 
         top : 0, 
         left : 0, 
         url : data 
        }); 
        authorizeUi.addEventListener('load', function(e) {        
         if (authorizeUi.getUrl().indexOf('twitterOauthCallback') > -1) { 
          oAuthApi.fetchAccessToken(function(data) { 
           oAuthApi.saveAccessToken(); 
           oAuthApi.setAuthorised(true); 
           var accessToken = oAuthApi.getAccessToken(); 
           var accessTokenSecret = oAuthApi.getAccessTokenSecret(); 

           ...some other code here 

          }, function(data) { 
           alert('fetchAccessToken unauthorized error ' + data.error); 
          }); 
         } 
        });       

       }, function(data) { 
        alert('fetchRequestToken error'); 
       }); 

這裏的代碼是我jsOAuth初始化:

var oauth = OAuth({ 
     consumerKey : jsonObj.consumerKey, 
     consumerSecret : jsonObj.consumerSecret, 
     callbackUrl : jsonObj.callbackUrl 
    }); 

我的回調是

http://192.168.1.116:8888/callback/twitterOauthCallback.html 

1 - 我稱之爲fetchRequestToken(OK) 2 - 我打開用戶授權/登錄窗口(ok) 3 - 輸入用戶名和密碼並獲得回調url(ok) 4 - 調用fetchAccessToken(get 401 e RROR)

下面

是我的頭:

oauth_callback = http://192.168.1.74:8888/callback/twitterOauthCallback.html 
oauth_consumer_key = E3xxxxxxxxxxxxxxHfg 
oauth_token = J1fxxxxxxxxxxxxxxxxxxxxxxxxxxxx20 
oauth_signature_method = HMAC-SHA1 
oauth_timestamp = 1365151792 
oauth_nonce = 36222C667E353A51 
oauth_verifier = 
oauth_version = 1.0 

任何想法可能是什麼問題?我正在封鎖

回答

1

微博發突然和未宣佈改變這個星期到OAuth:https://dev.twitter.com/discussions/16443

望着頭,問題是,你的oauth_verifier值是空的,現在改變強制該值。您將以您的回調網址爲參數獲得此信息(http://192.168.1.116:8888/callback/twitterOauthCallback.html?oauth_token=xxx&oauth_verifier=xxx

+0

非常感謝您。有效 :) – 2013-04-05 14:30:07