2014-05-02 32 views
0

得到了我的令牌,並且可以調用核心API,但是當我打電話https://api.dropbox.com/1/account/info產生無效的OAuth請求

https://api.dropbox.com/1/account/info

我得到一個

{"error": "Invalid OAuth request."} 

根據文檔(https://www.dropbox.com/developers/core/docs#account-info)除語言環境外沒有參數,只有可疑的GET。

我正在執行的用例驗證訪問令牌是否未通過檢查當前用戶的帳戶信息而被吊銷。

我訪問通過核心API HTTP而不是通過庫提供(從Python,Ruby,PHP,...)

+0

該URL看起來是正確的,所以我的猜測會是關於請求的其他內容是錯誤的。你在使用OAuth 1還是OAuth 2?你的'Authorization'頭是什麼樣的? (但是請不要在這裏分享任何祕密......如果你要分享,請輸入一個虛假標記。) – smarx

+0

我有同樣的問題,這是針對OAuth 1.0的。我也嘗試過OAuth 2.0,但在這兩種情況下都不行。我使用的是Google App Engine,而Dropbox OAuth 2.0不起作用,因爲Dropbox需要HTTPS中的Callback URI,但GAE似乎不支持它們。所以我在將HTTPS轉換爲HTTP(這是用於免費應用程序的協議)中收到錯誤。所以我真的不知道如何使用Dropbox API。也許沒有人知道如何解決這個問題...... – Aerox

回答

0

你必須通過設置授權頭添加您的訪問令牌在你的URL連接與你的令牌。

System.out.println("accesstoken:" + access_token); 
String token="Bearer "; 
token+=access_token; 
if (access_token != null) { 
URL url = new URL(
"https://api.dropbox.com/1/account/info?locale=English"); 
connection = (HttpURLConnection) url.openConnection(); 

這適用於我。