1
我試圖將通知發送到安裝了我的應用程序的設備。我已按照this Tutorial中的說明操作,併成功獲取我的設備的註冊ID。但是,當我從我的服務器發送我的請求時,我總是得到401響應。從GCM服務器獲取401錯誤響應狀態
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
這是我測試過它:
api_key=MY_API_KEY
curl --header "Authorization: key=$api_key" --header Content-Type:"application/json" https://android.googleapis.com/gcm/send -d "{\"registration_ids\":[\"MY_REGISTRATION_ID\"]}"
我把它換成MY_API_KEY與雲端控制檯項目編號,並MY_REGISTRATION_ID與Android代碼gcm = GoogleCloudMessaging.getInstance(context); gcm.register(SENDER_ID);
我知道的結果有幾個人發表了同樣的問題,而且我已經閱讀了所有這些文章幾個小時。可悲的是,他們的解決方案並沒有解決我的錯誤。請幫助,併爲我可憐的英語感到抱歉。
這很奇怪,我在哪裏可以找到瀏覽器密鑰? –
在你的谷歌API控制檯進入你的項目。然後在左邊找到API&Auth>註冊應用程序。在那裏您應該找到瀏覽器密鑰 – allemattio
您似乎在雲控制檯的平臺字段中使用「Web App」而不是「Android」。服務器API密鑰和瀏覽器API密鑰都可以在沒有401錯誤的情況下工作。不過,我還沒有成功收到任何通知。以下是來自GCM的響應:{{「multicast_id」:462805484xxxxxxxxx,「success」:1,「failure」:0,「canonical_ids」:0,「results」:[{「message_id」:「0:1386725281760300%fde9a7xxxxxxxxx」}] }' –