1. 程式人生 > >node搭建本地服務器後端解決跨域問題

node搭建本地服務器後端解決跨域問題

clas har request method con set hub utf xmlhttp

第一種方法:

// 通過跨域裏面的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搭建本地服務器後端解決跨域問題