XMLHttpRequest javascript POST请求问题"无法加载网址"

时间:2015-11-11 18:47:19

标签: javascript json post xmlhttprequest

var http = {};

http.request = (function () {
    function send(jsonObject, url) {
        var jsonString = JSON.stringify(jsonObject);
        var req = new XMLHttpRequest();
        req.open("POST", url);
        req.setRequestHeader("Content-Type", "application/json");
        req.send(jsonString);
    }
    return {
        send: send
    };
})();

我正在尝试使用此javascript函数发送数据。但是它给了我一个错误: " XMLHttpRequest无法加载 url 。预检的响应无效(重定向)"

我做错了什么?

1 个答案:

答案 0 :(得分:0)

由于您将内容类型设置为json,因此这被视为预检请求。这意味着基本上是两个请求:第一个请求服务器发出请求的权限,第二个请求是实际请求。对于这种情况,您至少需要在服务器端检查请求的来源:

header('Access-Control-Allow-Origin: your origin url')

您可能还需要检查请求方法:

header('Access-Control-Allow-Methods: POST')