2015-07-03 173 views
11

我正在使用gradle-play-publisher庫將我的應用上傳到Google Play,但執行發佈任務時出現401未授權的錯誤。 設置了我在開發者控制檯上的Google Play和服務帳戶的開發者帳戶。 Play API已啓用。Google Play API返回錯誤401

當我從生成日誌中看到,發送的第一個要求是:

POST https://accounts.google.com/o/oauth2/token 

我得到200 OK及以下JSON:

{ 
    "access_token" : "< some value here>", 
    "token_type" : "Bearer", 
    "expires_in" : 3600 
} 

那麼接下來的請求被髮送:

POST https://www.googleapis.com/androidpublisher/v2/applications/< my app's package name here>/edits 

首先,我注意到這個標題等:

Authorization: <Not Logged> 

第二,我得到這個錯誤作爲

401 Unauthorized 
WWW-Authenticate: Bearer realm="https://accounts.google.com/", error=invalid_token 

有沒有人遇到同樣的問題的迴應?一切似乎都設置正確,所以我不知道哪裏出了問題。謝謝。

回答

3

你的錯誤意味着

服務器401(未授權)狀態代碼迴應,但未能提供一個權威性的挑戰(WWW-Authenticate頭)因此,不可能對HttpClient的,自動從認證中恢復失敗。

檢查你的應用程序的HTTP POST請求,其中可能期望 一些簡短的證書在HTML表單

我希望你已經通過郵差谷歌測試你的休息API(URL) Chrome擴展。現在

,如果你的REST API工作正常,然後再考慮如何使用,在你的代碼,一步步揣摩下面

  1. 服務器實現錯誤或客戶端執行錯誤或網址
  2. 參數錯誤
  3. 檢查<uses-permission android:name="android.permission.INTERNET" />在 AndroidManifest.xml中
+1

感謝您的回覆。問題是:我不會手動發送任何這些請求。我在問題中提到的圖書館應該爲我做所有事情。它似乎對其他人有效。 –

+0

請檢查以下鏈接:http://pcsupport.about.com/od/findbyerrormessage/a/401error.htm –

+1

謝謝,我完全知道401錯誤的含義。正如我已經提到的:我無法訪問發送這些請求的代碼。它在圖書館裏面。我唯一可以控制的是Google API的項目配置。所以我希望得到一個答案,如'是的,我面臨同樣的問題,只是去[在這裏],並打開[此功能]' –

相關問題