我想在我的導軌應用程序中實現CORS,所以我使用Google搜索rack-cors gem。而我所做的一切都是在自述中說,有相應的更新Gemfile中和更新的application.rb
這樣的:
無法使用導軌應用程序中的機架工作
module YourApp
class Application < Rails::Application
# ...
config.middleware.use Rack::Cors do
allow do
origins '*'
resource '*', :headers => :any, :methods => [:get, :post, :options]
end
end
end
end
但沒有奏效。無論我做什麼,在瀏覽器控制檯我一直得到消息:
XMLHttpRequest cannot load https://somewebsite.com. Origin http://0.0.0.0:3000 is not allowed by Access-Control-Allow-Origin.
在github上閱讀本blogpost和issue後,我意識到,在中間件堆棧問題也許機架CORS中間件的位置。所以,我沒有因爲被告知在GitHub的問題:
module YourApp
class Application < Rails::Application
# ...
config.middleware.insert 0, Rack::Cors do
allow do
origins '*'
resource '*', :headers => :any, :methods => [:get, :post, :options]
end
end
end
end
之後,當我運行rake middleware
架-CORS是真正在堆棧的頂部。
但它仍然只是不會工作。我不斷收到相同的錯誤。任何人,請幫助。
我知道這是顯而易見的,但是你一定要重新啓動服務器的軌道?由於這是初始化的一部分,所以直到重新啓動纔會生效。 – clexmond
是的,我重新啓動服務器很多次。 – Prostakov
問題是,它不是什麼超自然的東西,只是爲了獲得這個寶石的工作。只是讓我瘋了... – Prostakov