我能够使用以下GET请求将CORS用于特定控制器:
'get /url': {
controller: 'somecontroller',
action: 'someaction',
cors: true
},
但是如果我尝试使用如下的POST,我会收到“拒绝访问”错误:
'post /url': {
controller: 'somecontroller',
action: 'someaction',
cors: true
},
如何为post方法设置cors?
答案 0 :(得分:0)
在我有限的研究中,我发现只需添加" cors:true"控制器没有解决问题。 Sails仍然期待post方法的csrf
标记。在bootstrap.js
文件夹下的config
文件中,我在底部添加了以下代码,以使用以下内容禁用路由上的csrf
令牌:
sails.config.csrf.routesDisabled = '/url';
如果您有更好的解决方案,请在此处发布。谢谢!
编辑:您也可以在config/csrf.js
文件中进行更改。将module.exports.csrf = true;
更改为:
module.exports.csrf = {
routesDisabled: '/url',
};
您可能必须将它用于您的apis
module.exports.csrf = {
routesDisabled: '/api/*',
};
答案 1 :(得分:0)
:
'OPTIONS /*': function(req, res) {
res.send(200);
},
并在config / cors.js中尝试放置:
module.exports.cors = {
allRoutes: true,
origin: '*',
credentials: true,
methods: 'GET, POST, PUT, DELETE, OPTIONS, HEAD',
headers: 'content-type, access-control-allow-origin, authorization'
};