在rails中执行AJAX Post而不传入authenticity_token
所以我记得有一次,当我试图做一个AJAXpost时,我不得不将form_authenticity_token作为其中一个数据传递给rails。 出于某种原因,不这样做会产生某种错误,我会立即退出。 有没有办法仍然有这个forms提交的真实性令牌,但不是ajaxpost? 换句话说,我不想在我的post数据中传递autheniticy令牌。
您可以将其传递给javascript,而不是禁用真实性令牌validation:
<%= javascript_tag "var AUTH_TOKEN = #{form_authenticity_token.inspect};" if protect_against_forgery? %>
然后只需提交AUTH_TOKEN
以及任何AJAXpost。
资源
根据文档
您可以逐个控制器禁用csrf保护:
skip_before_filter :verify_authenticity_token