【发布时间】:2016-01-25 16:45:59
【问题描述】:
我在 Node js 上开发服务器,在 Angularjs 上开发前端,但是当我尝试从前端发出请求时出现错误:
XMLHttpRequest 无法加载 http://localhost:8085/server/authenticate/。 对预检请求的响应未通过访问控制检查:否 请求中存在“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“http://localhost:9000” 访问。
我的 server.js 中的代码
app.use(function(req,res,next){
res.setHeader('Access-Control-Allow-Oringin','*');
res.setHeader('Access-Control-Allow-Methods','GET,POST,OPTIONS');
res.setHeader('Access-Control-Allow-Headers','X-Requested-With,content-type,Authorization,accept');
if (req.method === 'OPTIONS'){
res.statusCode = 200;
return res.end();
}
else{
return next();
}
});
有什么建议吗?
注意:后端和前端不在同一个端口,我正在尝试使其作为跨源资源工作。
【问题讨论】:
-
Access-Control-Allow-Oringin不是 CORS 标头 :) 错误消息确实正确,Access-Control-Allow-Origin没有在响应中设置。 -
非常感谢,我没有意识到这一点
标签: javascript angularjs node.js