Sails.js 全局 CORS 配置不起作用,每条路线是

Posted

技术标签:

【中文标题】Sails.js 全局 CORS 配置不起作用,每条路线是【英文标题】:Sails.js global CORS config not working, per-route is 【发布时间】:2017-01-14 13:56:33 【问题描述】:

我有一个 SailsJS 应用程序,我正在尝试过滤一些来源。我的系统正在运行,但我有一个问题。

我尝试允许使用这些键访问 cors.js 文件中的所有路由:

allRoutes: true,
origin: 'http://my.domain.com'

但这不起作用,所有请求都被拒绝,并出现“Access-Control-Allow-Origin”错误。

但是,如果我在每条路由的基础上配置 cors 选项,它就可以工作。例如,我在一条路线(config/routes.js)上有这个:

'get /myroute': 
    controller: 'MyController',
    action: 'get',
    cors:
        origin:'http://my.domain.com'
    

效果很好,所以...为什么全局 config/cors.js 配置不起作用?我真的很想把它放在全局而不是每个路由

【问题讨论】:

【参考方案1】:

http://sailsjs.org/documentation/concepts/security/cors

这是适合我的配置。确保指定方法。

module.exports.cors = 
   allRoutes: true,
   origin: '*',
   credentials: true,
   methods: 'GET, POST, PUT, DELETE, OPTIONS, HEAD',
   headers: 'content-type',
;

首先尝试origin: '*',但它也应该适用于origin: 'yourdomain.com'。除了指定这个配置之外,你不能做更多的事情。

【讨论】:

我不知道是什么,但现在正在工作。我想我还没有激活你拥有的标题,也许就是这样。无论如何,你是对的,现在正在工作。谢谢! :)

以上是关于Sails.js 全局 CORS 配置不起作用,每条路线是的主要内容,如果未能解决你的问题,请参考以下文章

使用 Java Config 的全局 CORS 配置在 Spring MVC 中不起作用

使用Java Config的全局CORS配置不起作用

Sails js政策不起作用

Spring 4/5 全局 CORS 配置不起作用,给出“请求的资源上不存在‘Access-Control-Allow-Origin’标头’

sails.js 从视图中的配置获取环境值

Sails.js 与护照-http-bearer 身份验证不起作用