XMLHttpRequest,访问控制允许来源错误

时间:2018-09-03 22:54:38

标签: php json ajax xmlhttprequest http-headers

我们在使用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搜索并找到了解决方案,但没有用。

请帮助我,谢谢。

1 个答案:

答案 0 :(得分:-1)

虽然您没有提到正在使用哪个服务器,但是这里有两个链接,介绍了如何在流行的HTTP服务器上配置Access-Control-Allow-Origin标头。

请注意:您不想使用*,但您可能需要适当地配置服务器以仅对已知主机启用此功能。