Возникли проблемы с сервером, когда приложение в Rails 5.0.0.beta2 пытается использовать ActionCable.
Использование localhost:3000 работает нормально, так как это то, что по умолчанию использует большинство ActionCable. Но если я попытаюсь запустить сервер rails на порту 3001, он выдаст мне Request origin not allowed: http://localhost:3001
В документах ActionCable упоминается использование чего-то вроде ActionCable.server.config.allowed_request_origins = ['http://localhost:3001']
, что действительно работает для меня, если я помещу его в config.ru
Но это кажется действительно странным местом для его размещения. Я чувствую, что он должен быть в состоянии войти в файл инициализатора или в мой файл конфигурации среды development.rb.
Чтобы еще раз доказать мою точку зрения о том, что ему должно быть разрешено входить туда, параметр ActionCable.server.config.disable_request_forgery_protection = true
игнорирует источник запроса, даже когда я включаю его в development.rb.
Почему ActionCable.server.config.disable_request_forgery_protection
работает в development.rb, а ActionCable.server.config.allowed_request_origins
нет (но работает в config.ru)?
Не насущная проблема, так как у меня есть несколько вариантов обходного пути. Я просто хочу знать, не упускаю ли я что-то очевидное в том, как я представляю, как это должно работать.