本来想做一个设置cors白名单,本来是犯懒想在网上看看有没有现成的直接copy一下,结果在google找了半天,大部分都是复制的一篇文章,他的代码贼多,我还看不懂,用着还很麻烦。后来又找到了另一篇文章,结果不知道为啥不能用,我真是个菜狗加懒狗。^_^
//安装引入cors
const cors = require('cors');
app.use(cors());
app.use(function (req, res, next) {
//设置白名单列表~~~~
let whiteList = \["https://xxxx.com/", "https://xxxx.com/"\];
//用来接收当前访问的域名
let domain = null;
放到定时器里,是为了拿到当前访问的域名,如果直接写在外面只能拿到undefined
setTimeout(() => {
//req.headers.referer第一次是undefined,但是在页面打开的过城中,会一直刷新。
domain = req.headers.referer;
//可以从这里看到我上句说的意思
console.log(domain);
//如果当前访问的域名是白名单里的,则把设置为可访问。如果不是,则改为只允许默认的域名访问。
whiteList.includes(domain) ? res.header("Access-Control-Allow-Origin", "\*") : res.header(
"Access-Control-Allow-Origin", "https://www.xxx.com")
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
}, 0)
});
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。