我有一个nodejs应用程序,是使用expressjs的cors包完成cors设置的。
我的cors设置代码为:
var whitelist = ['https://shajao.com', 'https://www.shajao.com'];
var corsOptions = {
origin: function (origin, callback) {
if (whitelist.indexOf(origin) !== -1) {
callback(null, true)
} else {
callback(new Error('Not allowed by CORS'))
}
},
allowedHeaders: ['Content-Type', 'Authorization', 'Content-Length', 'X-Requested-With', 'Accept'],
methods: ['GET', 'PUT', 'POST', 'DELETE', 'OPTIONS'],
optionsSuccessStatus: 200 // some legacy browsers (IE11, various SmartTVs) choke on 204
}
app.use(cors(corsOptions));
app.use(express.static(path.join(__dirname, '/public/')));
从一个有角度的应用程序中调用api,该应用程序可以使服务器获得完美的响应。因此cors在这里运作良好。但是图像资源正被cors阻塞。
要查看该问题的网址, https://shajao.com/frames
示例图片网址: https://api.shajao.com/uploads/frames/8cf9006f-0225-461b-a4f2-153737152274.png
答案 0 :(得分:0)
跨域读取阻止( CORB )是一项新的Web平台安全功能。
Ref:https://www.chromium.org/Home/chromium-security/corb-for-developers
尝试先清除浏览器的缓存。
如果它不起作用,则必须为响应设置正确的“ Content-Type”标头。