回答:
CSRFを無効にするコントローラーで、次のチェックを行います。
skip_before_action :verify_authenticity_token
または、いくつかのメソッドを除くすべてに対して無効にするには:
skip_before_action :verify_authenticity_token, :except => [:update, :create]
または、指定したメソッドのみを無効にするには:
skip_before_action :verify_authenticity_token, :only => [:custom_auth, :update]
Rails3では、特定のメソッドのコントローラーでcsrfトークンを無効にすることができます。
protect_from_forgery :except => :create
ApplicationController
。以下の(skip_before_filter :verify_authenticity_token
)のMike Lewisの応答は、コントローラーがから継承すると仮定して、コントローラーごとにそれを無効にする方法ApplicationController
です。
Rails 4では、のskip_before_action
代わりに書き込むオプションが利用できるようになりましたskip_before_filter
。
# Works in Rails 4 and 5
skip_before_action :verify_authenticity_token
または
# Works in Rails 3 and 4 (deprecated in Rails 4 and removed in Rails 5)
skip_before_filter :verify_authenticity_token