【发布时间】:2017-02-25 05:32:07
【问题描述】:
我有一个这样的javascript函数:
function sendNotification(){
var url = 'https://fcm.googleapis.com/fcm/send';
var contentType = 'application/json';
var data = {"notification":
{
"title": 'Hello'
},
"to": '/topics/breaking_news'
};
var xhr = new XMLHttpRequest();
xhr.onload = function(){
alert (xhr.responseXML);
}
xhr.open("POST", url, false);
xhr.setRequestHeader('Content-Type', contentType);
xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
xhr.setRequestHeader('Access-Control-Allow-Methods', 'POST');
xhr.onreadystatechange = function () {
if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
console.log(xhr.responseText);
} else {
console.log(xhr.responseXML);
}
};
xhr.setRequestHeader('Authorization', 'key=XXXXXXXX');
xhr.send();
}
但是调用发送返回 400。我有一段时间没有编程有点生疏,所以如果它是微不足道的,我道歉。这两天一直在想这件事。
【问题讨论】:
-
您是否尝试过将正文添加到通知中,即使它是空白的?
-
是的。我得到:XMLHttpRequest 无法加载fcm.googleapis.com/fcm/send。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问 Origin 'localhost:5000'。
-
您是否修复了“不存在'Access-Control-Allow-Origin'标头...”问题@Sanjay?
标签: javascript firebase