我需要将CORS设置为在由express提供的脚本上启用。我如何设置这些公共/资产返回的响应头?
当前回答
npm中至少有一个中间件可以在Express中处理CORS: CORS。
其他回答
服务。使用(函数(req, res, next) { res.header(“Access-Control-Allow-Origin”、“*”); res.header(“Access-Control-Allow-Methods”、“获取、头选择、POST、PUT "); res.header("Access-Control-Allow-Headers", "Origin, x - request - with, Content-Type, Accept, Authorization"); next (); });
npm中至少有一个中间件可以在Express中处理CORS: CORS。
这太烦人了。
好的,如果有人仍然有问题或只是不想添加另一个库。你所要做的就是把这个中间件代码行放在你的路由之前。
歌珥的例子
app.use((req, res, next) => {
res.append('Access-Control-Allow-Origin', ['*']);
res.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.append('Access-Control-Allow-Headers', 'Content-Type');
next();
});
// Express routes
app.get('/api/examples', (req, res)=> {...});
您可以使用cors来做到这一点。cors将处理您的cors回复
var cors = require('cors')
app.use(cors());
使用express.js 4.18.2的最新版本:
如果你正在使用静态中间件,并且想要改变响应头,你应该:
app.use(express.static('./', {
setHeaders: function(res) {
res.set("Content-Security-Policy", "default-src 'self'");
}
}));
推荐文章
- 如何从javascript子类调用父方法?
- NPM清洁模块
- Javascript中Uint8Array的字符串
- 跨浏览器JavaScript(不是jQuery…)滚动到顶部动画
- 如何找到一个值的数组索引?
- 当内部元素滚动位置达到顶部/底部时,防止父元素的滚动?
- 在Node.js中加载基本HTML
- Node.js和CPU密集型请求
- val()和text()的区别
- 如何使用Jest测试对象键和值是否相等?
- 将长模板文字行换行为多行,而无需在字符串中创建新行
- 如何在JavaScript中映射/减少/过滤一个集?
- Bower: ENOGIT Git未安装或不在PATH中
- 为什么在节点REPL中没有定义__dirname ?
- 添加javascript选项选择