我收到很多401
未授權嘗試連接到Google Cloud Message Server時發生錯誤。如何解決Android GCM 401錯誤?
我們的代碼在我們的測試服務器上工作了一段時間,但在生產過程中它有時會失敗。
API鍵工作正常,推送通知到達(最終),但同時我得到了很多401
錯誤。
我驗證過服務器IP地址是白名單在控制檯上:
以下Google Troublesooting guide的時候,我得到令人驚訝的結果:
[email protected]:~$ :curl --header "Authorization: key=AIzaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxFFU" --header Content-Type:"application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"ABC\"]}"
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
[email protected]:~$ curl --header "Authorization: key=AIzaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxFFU" --header Content-Type:"application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"ABC\"]}"
{"multicast_id":7560936933053964665,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}
[email protected]:~$ curl --header "Authorization: key=AIzaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxFFU" --header Content-Type:"application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"ABC\"]}"
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
有時候,同樣的curl
命令的作品,有時它不會沒有任何改變,也不會在控制檯或命令行中...有時它的工作原理,我認爲它的關鍵沒關係(我已經多次檢查了密鑰和允許的IP)。
我已經檢查了所有的stackoverflow問題並測試了所有的建議,但是即使從白名單中刪除所有IP(以允許來自任何IP的請求)行爲仍然是相同的,某些時候它有時會工作「T
一些參考我檢查:
- GCM with PHP (Google Cloud Messaging)
- GCM http 401 authorization error
- Unreliable 401 errors with GCM services
- GCM send message fails with 401 (Unauthorized)
什麼可怎麼回事任何意見將非常感激。
我們遇到了非常類似的問題。你有沒有找到任何其他信息? –
@JakeBraun不,在創建一個新的API密鑰並嘗試了它的工作時間後,我們停止了查找... – pconcepcion
這對我來說也是一樣。奇怪 – valeriocomo