无法创建XMLHTTPRequest(跨站点)

时间:2015-11-28 20:16:08

标签: javascript ajax

我正在尝试向服务器创建XMLHttpRequest,服务器接受JSON作为参数,它应该注册我发送的参数。 这是我的代码:

function makeXMLRequest() {
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open("POST", "http://mywebserverhere/register", true);
    xmlhttp.setRequestHeader("Access-Control-Allow-Origin", "*");
    xmlhttp.setRequestHeader("Access-Control-Allow-Methods", "POST, GET");
    xmlhttp.setRequestHeader("Content-type", "application/json");
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.status != 200)  {
            // Error
        return;
        }
    alert(xmlhttp.responseText);
    }
    xmlhttp.send({"name": "pedro21", "pass": "nAosei1"});
}

但是我收到了这个错误:

  

XMLHttpRequest无法加载http://mywebserverhere/register。在预检响应中,Access-Control-Allow-Header不允许使用请求标题字段Access-Control-Allow-Origin。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

要在POST请求中允许CORS,您需要创建标头。使用GET你不必放这个,但是你需要POST:

 xmlhttp.setRequestHeader('X-PINGOTHER', 'pingpong');