当我尝试通过我的REST客户端发布数据时,我收到类似这样的警告
Warning :Can't verify CSRF token authenticity.
如何解决这个问题。
答案 0 :(得分:7)
我相信您正试图从POST
制作link
。默认情况下,links
不应提出POST
个请求,只能提出GET
个请求。因此,当您尝试与服务器建立连接时,Rails
会向您发出警告
绕过此类行为的一种方法是使用link
,而不是使用form
。因此,您可以向服务器发出正确的POST
请求
或者,您可以从protect_from_forgery
中删除application_controller
行,因此Rails
不会执行此类验证,但我们不建议这样做。
答案 1 :(得分:1)
你可以这样做,(但不推荐:)),跳过伪造保护
例如:您要将数据发布到PostController =>创建行动
class PostsController < ApplicationController
before_filter :protect_from_forgery, :except => [:create]
def create
#your method
end
end
但话虽如此,我确信应该有更好的方法来做你想做的事,所以如果你能解释你想做什么,有人可以提供帮助
HTH
答案 2 :(得分:1)
nop
我错过了我的application.js中的以下行
//= require jquery_ujs
我取而代之的是它的工作......