7

当我尝试通过我的 REST 客户端发布数据时,我收到这样的警告

Warning :Can't verify CSRF token authenticity.

如何解决这个问题。

4

3 回答 3

7

我相信您正在尝试POST从 a 中制作 a link。默认情况下links不应该发出POST请求,只会发出请求GET。因此,当您尝试连接到您的服务器时,会Rails向您发出警告。
绕过这种行为的一种方法是,而不是使用 a link,使用 a form。因此,您可以向服务器发出适当的POST请求。
或者,您可以protect_from_forgery从您的 , 中删除该行application_controller,因此Rails不进行此类验证,但极不推荐这样做。

于 2012-12-26T10:55:20.287 回答
2

你可以这样做,(但不推荐:)),跳过伪造保护

例如:您将数据发布到 PostController => 创建操作

class PostsController < ApplicationController

   before_filter :protect_from_forgery, :except => [:create]  

   def create
        #your method
   end
end

但话虽如此,我相信应该有更好的方法来做你想做的事,所以如果你能解释你想做什么,有人可以帮忙

高温高压

于 2012-12-26T20:03:20.930 回答
1

我在 application.js 中错过了以下行

//= require jquery_ujs

我更换了它和它的工作..

于 2013-12-25T13:39:21.700 回答