nodejs 跨域处理
之前使用过Chrome中跨域插件,只需要简单启动就可以实现跨域demo的测试, 插件名字为Allow CORS: Access-Control-Allow-Origin。
下面记录一下前端使用nodejs服务处理跨域的方法。
cors 插件方法
1-安装
npm i cors --save
2-调用
const cors = require('cors')
app.use(cors())
路由中配置请求的头信息
res.setHeader("Access-Control-Allow-Origin", "*");
注意:某些时候不会生效,不推荐的方法
使用 app.all 解决
app.all 作为第二种方法的优化版。
app.all('*', function (req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE,OPTIONS');
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header('Access-Control-Allow-Headers', ['mytoken','Content-Type']);
next();
});
总结:推荐使用cors或者app.all来解决跨域,当然也可以使用我引言里面谷歌插件来解决跨域问题。