【问题标题】:Chrome extension: Send AJAX form to Rails appChrome 扩展:将 AJAX 表单发送到 Rails 应用程序
【发布时间】:2014-02-17 06:33:44
【问题描述】:

我正在尝试为我的 Rails 应用程序制作一个 Chrome 扩展程序,以使用 ajax 表单发送 POST 数据。但是,我得到了服务器的响应:

ActionController::InvalidAuthenticityToken in AppController#getpostdata.

所以我认为我需要获取一个真实性令牌并将其包含在我的表单中。 或者,我应该关闭它吗?怎么做?

谢谢

【问题讨论】:

    标签: ruby-on-rails ajax google-chrome-extension ruby-on-rails-4 csrf


    【解决方案1】:

    您可以在 GET 请求期间在 Rails 视图中使用 form_authenticity_token 帮助程序检索令牌。

    您也可以禁用令牌,或者使用:null_session 选项,因为这被认为最适合 API。更多信息请咨询the documentation

    【讨论】:

      【解决方案2】:

      您也可以跳过控制器中的特定 api 方法调用,如下所示:

      skip_before_filter :verify_authenticity_token, :only =>[:method_name]

      【讨论】:

      • 这是危险的,应该尽量避免,它会让你的应用容易受到跨站请求的攻击
      猜你喜欢
      • 1970-01-01
      • 2014-10-13
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多