当我尝试加载我的网页时出现以下错误:请求 Headers 字段Access-Control-Allow-Origin在预检响应中不允许使用Access-Control-Allow-Origin .
我已经查看了回答此问题的其他答案,并指出缺少CORS支持 . 令人困惑的是我得到了支持!至少我想我做到了 .
我正在尝试将Zingchart连接到我的Angular JS前端并使用AJAX请求从我的REST API获取数据(在localhost:3000)
这是我的AJAX调用:
window.feed = function(callback) {
$.ajax({
type: "GET",
dataType: "json",
headers: {
Accept: "application/json",
"Access-Control-Allow-Origin": "*"
},
url: "http://localhost:3000/readings",
success: function (data) {
var mem = data.mem.size/10000;
var tick = {
plot0: parseInt(mem)
};
callback(JSON.stringify(tick));
}
});
我的REST API实现包括以下内容:
// CORS Support
app.use(function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
我的REST API是在本教程的帮助下构建的:https://www.youtube.com/watch?v=OhPFgqHz68o
1 回答
拿出
"headers"
和"dataType"
. 您的请求将如下所示:您的 Headers 正在触发预检请求 .
如果你建议不使用jQuery for AJAX而是使用Angular的built-in $http service .
我在ZingChart团队 . 霍勒,如果我们可以帮助你的图表 .