每当我的 Chrome 浏览器向 REST api 服务器发出请求时,控制台中就会出现浏览器错误,显示拒绝获取不安全 header “Content-Range”
。现在我已经设法以两种不同的方式在我的普通 Express 服务器(即没有 StrongLoop)中修复了这个问题:
- 手动设置响应 header
res.header("Access-Control-Expose-Headers")
OR - 使用 node-cors
allowedHeaders
和exposedHeaders
选项(请参阅 https://github.com/TroyGoode/node-cors#configuration-options)
现在我如何在 StrongLoop 实例中实现这一目标?官方 SL 文档仅讨论 cors.origin
和 cors.credentials
,请参阅 http://docs.strongloop.com/display/public/LB/config.json .
我错过了什么吗?
更新最佳解决方案:
// config.json
"cors": {
"origin": true,
"credentials": true,
"allowedHeaders": ["X-Requested-With"],
"exposedHeaders": ["Content-Range"]
},
最佳答案
我们使用node-cors在幕后。 config.json 中配置的 cors 选项将传递给 node-cors。你能尝试一下吗?
关于cors - 使用 Strongloop 框架自定义响应 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28086213/