我们在使用REST API时收到以下错误。
“所请求的资源上没有'Access-Control-Allow-Origin'标头。”
在我的代码下面
function get_XmlHttp()
{
var xmlHttp = null;
if(window.XMLHttpRequest) { // for Forefox, IE7+, Opera, Safari, ...
xmlHttp = new XMLHttpRequest();
}
else if(window.ActiveXObject) { // for Internet Explorer 5 or 6
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlHttp;
}
form_data = new FormData();
form_data.append('login',login);
form_data.append('key',key);
form_data.append('token',token);
var request = get_XmlHttp();
request.open("POST", "myapi", true);
request.setRequestHeader('Access-Control-Allow-Headers', '*');
request.setRequestHeader('Access-Control-Allow-Origin', '*');
request.send(form_data);
request.onreadystatechange = function() {
if (request.readyState == 4) {
alert(request.responseText);
}
}
我们也被Google搜索并找到了解决方案,但没有用。
请帮助我,谢谢。
答案 0 :(得分:-1)
虽然您没有提到正在使用哪个服务器,但是这里有两个链接,介绍了如何在流行的HTTP服务器上配置Access-Control-Allow-Origin
标头。
请注意:您不想使用*
,但您可能需要适当地配置服务器以仅对已知主机启用此功能。