заранее спасибо всем, кто может помочь мне с этим!!
Я запускаю приложение Rails 5.2 с React и Webpacker, и я хочу отображать значок Gravatar для своих пользователей, когда они вошли в систему, но я продолжаю блокироваться браузером CORB.
Я просмотрел всю документацию Rack CORS и записи Stack Overflow о настройке рельсов с помощью CORS, но до сих пор не могу заставить его работать. Я не вижу allowed-origins
в своих заголовках, а запросы к Gravatar.com продолжают блокироваться.
Я настроил свой config/credentials.yml.enc
с моими именами хостов, как указано в https://stackoverflow.com/a/56772510/759615:
development:
allowed_origins:
- http://localhost:3000
- http://127.0.0.1:3000
production:
allowed_origins:
- http://productionurl1.com
- http://productionurl2.com
application.rb
:
class Application < Rails::Application
config.load_defaults 5.2
config.middleware.insert_before 0, Rack::Cors do
allow do
origins Rails.application.credentials[Rails.env.to_sym][:allowed_origins]
resource '*',
headers: :origin,
methods: [:get, :post, :options, :put]
end
end
end
Я также попробовал полностью открытую конфигурацию для CORS в application.rb
просто для проверки концепции:
...
allow do
origins '*'
...
а для локальной среды я установил заголовки для dev_server в config/webpacker.yml
'Access-Control-Allow-Origin': 'http://localhost:3000/'
(где я также пробовал имя хоста Webpacker, 127.0.0.1
, безрезультатно)
Есть много переменных, и я, вероятно, что-то пропустил или, что более вероятно, неправильно понял значение в документации, но я действительно надеюсь, что у кого-то есть ответ CORS, который я ищу!