当前位置:  开发笔记 > 后端 > 正文

ruby on rails - rack-cors多个来源与diffrenet资源

如何解决《rubyonrails-rack-cors多个来源与diffrenet资源》经验,为你挑选了1个好方法。

我正在使用rack-cors gem在我的rails应用程序中实现CORS,但我不确定如何为不同的来源定义不同的资源.

我需要这样的东西:

config.middleware.insert_before 0, Rack::Cors do

  allow do
    origins 'http://localhost:3000'
    resource '/api/*', headers: :any, methods: [:get, :post, :options, :put, :delete]
  end

  allow do
    origins 'http://localhost:6000'
    resource '*', headers: :any, methods: [:get, :post, :options, :put, :delete]
  end

end

所以它允许" http:// localhost:3000 "只访问'/ api/*'并允许' http:// localhost:6000 '访问所有.可能吗?

上面的代码是正确的代码/语法吗?

谢谢.



1> 小智..:

我知道这有点旧了但是对于那些发现这个的人我只用Rails 5.1.4 api来解决这个问题

-

起源

ENV['CORS_ORIGINS'] = 'https://domain.first.com, http://another.origin.io'

CORS

Rails.application.config.middleware.insert_before 0, Rack::Cors do
  allow do
    origins ENV['CORS_ORIGINS'].split(',').map { |origin| origin.strip }

    resource '*',
      headers: :any,
      methods: [:get, :post, :put, :patch, :delete, :options, :head]
  end
end

推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有