我正在使用HTTP POST请求向我的网络应用程序上的作者发出通知,告知他们的故事是由我们的管理员批准的。
我的有效负载看起来像这样
var payload = {
"notification": {
"title": "Story Approved!",
"body": "Your story is approved"
},
"to" : to
}

这是我的要求
$.ajax({
type: 'POST',
url: 'https://fcm.googleapis.com/fcm/send',
headers: {
'Content-Type': 'application/json',
'Authorization': 'key='+serverKey
},
data: payload,
success: function(response){
console.log(response);
},
});

每当我尝试发送请求时,它都会给我以下错误
POST https://fcm.googleapis.com/fcm/send 400()
根据Firebase Error Response Codes
,我对此有点新鲜无效的JSON 400检查JSON消息是否格式正确并包含有效字段(例如,确保传入正确的数据类型)。
但我无法弄清楚我错在哪里。任何帮助将不胜感激
答案 0 :(得分:0)
将您的有效负载转换为json,如下所示:
data: JSON.stringify(msg)
您的代码将是这样的:
$.ajax({
type: 'POST',
url: 'https://fcm.googleapis.com/fcm/send',
headers: {
'Content-Type': 'application/json',
'Authorization': 'key='+serverKey
},
data: JSON.stringify(msg),
success: function(response){
console.log(response);
},
});