ActionController:: InvalidCrossOriginRequest в тесте контроллера


При запуске устаревших тестов контроллера, таких как этот:

    get :edit, id: object.id, format: :js

Мои тесты начали проваливаться в Rails 4.1 со следующей ошибкой:

ActionController::InvalidCrossOriginRequest: Security warning: an embedded <script> tag on another site requested protected JavaScript. If you know what you're doing, go ahead and disable forgery protection on this action to permit cross-origin JavaScript embedding.
2 26

2 ответа:

Для Рельсов 5+

get :edit, params: { id: object.id }, xhr: true

Более старые версии Rails приняли это, но решение состояло в использовании метода xhr следующим образом:

  xhr :get, :edit, id: object.id