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 ответов


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

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

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

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