這是我第一次嘗試讓REST調用通過Firefox的POST工作。我所生成的令牌與所需要的驗證串如下:Twitter REST API調用401 Unothorized
oauth_consumer_key
oauth_nonce
oauth_signature
oauth_signature_method
oauth_timestamp
組oauth_token
訂單計量器嗎?因爲我不明白我是否缺少其他東西。這裏是我的要求
https://api.twitter.com/1.1/search/tweets.json?q=&geocode=30.0444,31.2357,1km&until=2013-11-30&result_type=mixed&oauth_consumer_key=0xxxQ&oauth_nonce=bcbcxxx8&oauth_signature=pXXXglKjY%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1390221337&oauth_token=2287933520-fuxxxR0&count=100
的迴應是:
401 Unouthorized
{"errors":[{"message":"Could not authenticate you","code":32}]}
任何人都可以幫助嗎?
感謝,
編輯1
麥克建議的控制檯,它實際工作從控制檯,但控制檯提示您登錄所以它所管理的授權,這是罰款
現在我知道我的請求有效,如何將這些參數添加到$.ajax
調用中?我嘗試添加以下內容:
beforeSend : function(req) {
req.setRequestHeader('Authorization', auth);
},
其中「權威性」是「OAuth oauth_consumer_key=...
」但我得到一個錯誤的請求錯誤400
想法嗎?
感謝,
感謝邁克...我發現在我的應用程序的頁面整個字符串,我重新創建我的令牌和再生的字符串。 我的最終意圖是在JQuery/Ajax請求中將其設置爲REST調用,但現在我試圖通過Poster(Firefox嗅探器)獲取數據以確保它可以工作。 我試圖添加它作爲標題,將授權作爲名稱和整個字符串(在一行中)作爲值。我仍然得到同樣的錯誤。 – mzereba
不確定爲什麼授權不適合您。確保你有第一個「OAuth」字符串,加上字段之間的逗號。我的建議是嘗試[Twitter控制檯](https://apigee.com/console/twitter)來嘗試API。確保您在下拉列表中選擇了版本1.1。它將向您顯示在有效負載,查詢參數和標題中發送的內容。我能夠使用此工具併成功地致電tweets.json。還要注意,上面的示例有一個空查詢參數(... tweets.json?q =&geocode = 30.0444,31.2357,1km ...),我不確定是否允許。 –
感謝@MikeDunker ...所以在控制檯它的工作原理,並讓我回200 OK(當我通過讓它重定向我發送請求之前登錄進行身份驗證),所以我認爲我的電話是正確的。如果我想包含這些在一個Ajax請求將它是 'beforeSend:function(req){ req.setRequestHeader('Authorization',auth); }' 或者乾脆 '頭:{ '的Accept-Encoding': 「壓縮」, '授權':用戶id}' – mzereba