1 var express = require("express"); 2 var app = express(); 3 4 // app.get("/a", function(req,res){ 5 // // 設置" * "號表示允許任何域名來源的請求 6 // res.setHeader('Access-Control-Allow-Origin', '*'); 7 // res.json({"a":100}); 8 // }) 9 10 11 // options預檢請求 12 app.options("/a", function(req, res){ 13 console.log(111111) 14 res.setHeader('Access-Control-Allow-Origin', '*'); //允許請求的來源 15 res.setHeader('Access-Control-Allow-Headers', 'X-Test-Cors'); //允許當前自定義請求頭訪問 16 res.setHeader('Access-Control-Allow-Methods', 'POST, PUT, PATCH ,DELETE'); //允許使用當前三個請求方法 17 //跨域請求時間,單位為秒,即允許緩存該響應1000秒,在該時間范圍內,不會再重復發預檢請求 18 res.setHeader('Access-Control-Max-Age', '1000'); 19 res.end(); //結束預檢請求 20 }) 21 22 23 // POST請求 24 app.post("/a", function(req,res){ 25 res.setHeader('Access-Control-Allow-Origin', '*'); //允許請求的來源 26 res.setHeader('Access-Control-Allow-Headers', 'X-Test-Cors'); //允許當前自定義請求頭訪問 27 res.setHeader('Access-Control-Allow-Methods', 'POST, PUT, DELETE'); //允許使用當前三個請求方法 28 res.json({"a":100}); 29 }) 30 31 app.listen(3000);