首页 > 代码库 > node搭建本地服务器后端解决跨域问题
node搭建本地服务器后端解决跨域问题
第一种方法:
// 通过跨域里面的cors跨域
// 跨域中间件
app.use(function (req, res, next) {
// 设置cors跨域
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
res.header("X-Powered-By", ‘ 3.2.1‘)
res.header("Content-Type", "application/json;charset=utf-8");
next();
})
(1)Access-Control-Allow-Origin
该字段是必须的。它的值要么是请求时Origin字段的值,要么是一个*,表示接受任意域名的请求。
(2)Access-Control-Request-Method
该字段是必须的,用来列出浏览器的CORS请求会用到哪些HTTP方法。
(3)Access-Control-Expose-Headers
该字段可选。CORS请求时,XMLHttpRequest对象的getResponseHeader()方法只能拿到6个基本字段:Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma。如果想拿到其他字段,就必须在Access-Control-Expose-Headers里面指定。上面的例子指定,getResponseHeader(‘FooBar‘)可以返回FooBar字段的值。
第二种方法
npm里的cors模块 使用这个模块可以实现跨域功能
在express项目下面
执行npm install cors
然后在app.js里面
var cors = require(‘cors‘);
app.use(cors());
更多内容请查看
https://github.com/TroyGoode/node-cors
node搭建本地服务器后端解决跨域问题