我从后端发送POST请求,但是我收到了401身份验证错误 .
我发送:
Parse.Cloud.httpRequest({
method: 'POST',
url: 'https://android.googleapis.com/gcm/send',
headers: {
'Authorization': 'key=AIz...',
'Content-Type': 'application/json'
},
body: {
"to": REG_TOKEN,
"collapse_key": "notif",
"notification": {
"title": "Notification",
"body": "this is a noisy test"
}
},
success: function (httpResponse) {
console.log(httpResponse.text);
},
error:function (httpResponse) {
console.error('Request failed with response code ' + httpResponse.status);
}
});
AIz ...是我的服务器密钥 .
我明白了:
Request failed with response code 401
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
我已经遵循了所有的故障排除步骤,但我仍然无法解决这个问题 . 问题如下:
授权错误
您尝试用于发送邮件的发件人帐户无法通过身份验证 . 可能的原因是:
-
缺少授权标头或语法无效 .
-
作为密钥发送的项目编号无效 .
-
密钥有效但GCM服务已禁用 .
-
请求源自服务器密钥IP中未列入白名单的服务器 .
我在我的 Headers 中有身份验证,我使用GCM的服务器密钥,服务已启用,并且密钥当前不受限制以进行测试,因此不需要白名单 .
任何建议都将非常感激 .