Postman GET请求有效但不是Ajax CORS

时间:2017-10-17 19:56:10

标签: javascript jquery ajax cors

我正在尝试发出一个AJAX请求来获取restAPI的信息。

如果我使用POSTMAN进行测试,它可以和Putty一起使用此代码选择RAW,但由于CORS问题而不能使用AJAX。

这是适用于Putty的代码(它返回JSON数据):

GET /api/slot/0/io/do HTTP/1.1\r\n
Host: 172.25.0.208\r\n
Content-Type: application/json\r\n
Accept: vdn.dac.v1\r\n
\r\n

这是jQuery AJAX代码:

//Build GET Request URL
var url = "//" + ipDevice + "/api/slot/" + slot + "/io/do";
jQuery.support.cors = true;
//GET Request with HTTP header info
$.ajax({
    "url": url,
    "method": "GET",
    "headers": {
        "Accept": "vdn.dac.v1",
        "Content-type": "application/json"
    },
    "success": function (response) {
        getPowerStatusSuccess(response);
    },
    "error": function (response) {
        getPowerStatusFail(response);
    }
});

我在浏览器控制台(Firefox)上遇到的错误是:

Image

1 个答案:

答案 0 :(得分:1)

你的api需要将cors header~allow-origin设置为*或域名的白名单。

access-control-allow-origin: *