我正在尝试发出一个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)上遇到的错误是:
答案 0 :(得分:1)
你的api需要将cors header~allow-origin设置为*或域名的白名单。
access-control-allow-origin: *