Node.js express 跨域问题

跨域问题主要在header上下功夫
首先提供一个w3c的header定义 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
再提供一个网友提供的header详解 http://kb.cnblogs.com/page/92320/
这两个有助于帮助大家理解header的类型和作用,
但是遗憾的是跨域相关的两个header属性我都没有找到相关的定义,
下面直接告诉大家
1是Access-Control-Allow-Origin 允许的域
2是Access-Control-Allow-Headers 允许的header类型

第一项可以直接设为* 表示任意
但是第二项不能这样写,在chrome中测试跨域发现报错,
最终的代码看起来是这个样子:

app.all('*', function(req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Content-Type,Content-Length, Authorization, Accept,X-Requested-With");
    res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");
    res.header("X-Powered-By",' 3.2.1')
    if(req.method=="OPTIONS") res.send(200);/*让options请求快速返回*/
    else  next();
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容