Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为设计登录和注册获取ActionController::InvalidAuthenticationToken(ActionController::InvalidAuthenticationToken)错误_Ruby On Rails_Heroku_Devise - Fatal编程技术网

Ruby on rails 为设计登录和注册获取ActionController::InvalidAuthenticationToken(ActionController::InvalidAuthenticationToken)错误

Ruby on rails 为设计登录和注册获取ActionController::InvalidAuthenticationToken(ActionController::InvalidAuthenticationToken)错误,ruby-on-rails,heroku,devise,Ruby On Rails,Heroku,Devise,我知道有这么多的帖子与这个错误有关,但仍然 我在登录/注册Desive时遇到以下错误。(2天前,它工作正常,能够唱进去/唱起来。) 我在Heroku上托管的生产应用程序中遇到此错误 我有一个登台应用程序(它也托管在heroku上,并且有相同的代码库),并且运行良好 我可以登录并注册 我已经提到了以下链接,但得到了相同的问题 我使用rails 4实现同样的功能 编辑 我已经厌倦了下面的解决方案 已从应用程序控制器中删除防止伪造 已选中布局中是否存在csrf\u meta\u标记,并且该标

我知道有这么多的帖子与这个错误有关,但仍然

我在登录/注册Desive时遇到以下错误。(2天前,它工作正常,能够唱进去/唱起来。)

我在Heroku上托管的生产应用程序中遇到此错误

我有一个登台应用程序(它也托管在heroku上,并且有相同的代码库),并且运行良好

我可以登录并注册

我已经提到了以下链接,但得到了相同的问题

我使用rails 4实现同样的功能

编辑

我已经厌倦了下面的解决方案

  • 已从应用程序控制器中删除
    防止伪造
  • 已选中布局中是否存在csrf\u meta\u标记,并且该标记已存在
  • 还检查了表单中的
    authenticity\u token
    。您可以在日志跟踪中找到我提交的表单详细信息
  • 在应用程序控制器中添加了以下内容

    在\u过滤器之前跳过\u:验证\u真实性\u令牌,如果::设计\u控制器


    • 这可能是几件事

      1。您忘记在布局文件中添加

      <!DOCTYPE html>
      <html>
        <head>
          <title>Sample</title>
          <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
          <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
          <%= csrf_meta_tags %>
        </head>
        <body>  
          <%= yield %>
        </body>
      </html>
      
      3。Deave的作者建议对引发此异常的特定控制器操作禁用protect_from_伪造:

      # app/controllers/users/registrations_controller.rb
      class RegistrationsController < Devise::RegistrationsController
        skip_before_filter :verify_authenticity_token, :only => :create
      end
      
      #app/controller/users/registrations_controller.rb
      类注册控制器<设计::注册控制器
      在筛选器之前跳过\u:验证\u真实性\u令牌,:only=>:create
      结束
      
      4。您需要在表单中添加以下行

      <%= hidden_field_tag :authenticity_token, form_authenticity_token -%>
      

      这可能是几件事

      1。您忘记在布局文件中添加

      <!DOCTYPE html>
      <html>
        <head>
          <title>Sample</title>
          <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
          <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
          <%= csrf_meta_tags %>
        </head>
        <body>  
          <%= yield %>
        </body>
      </html>
      
      3。Deave的作者建议对引发此异常的特定控制器操作禁用protect_from_伪造:

      # app/controllers/users/registrations_controller.rb
      class RegistrationsController < Devise::RegistrationsController
        skip_before_filter :verify_authenticity_token, :only => :create
      end
      
      #app/controller/users/registrations_controller.rb
      类注册控制器<设计::注册控制器
      在筛选器之前跳过\u:验证\u真实性\u令牌,:only=>:create
      结束
      
      4。您需要在表单中添加以下行

      <%= hidden_field_tag :authenticity_token, form_authenticity_token -%>
      
      
      
      这是网络问题。我们的网络管理员在防火墙上做了一些更改,这就是它导致问题的原因。它还影响到其他网站

      这是网络问题。我们的网络管理员在防火墙上做了一些更改,这就是它导致问题的原因。它也会影响其他网站

      我的版面中已经有了
      csrf\u meta\u标签
      ,在我的应用程序控制器中也有
      protect\u from\u fagery
      。你是否在使用
      :with
      和protect\u from\u fagery?我尝试了这种方法
      在过滤之前跳过\u:验证\u真实性\u令牌,如果::设计\u控制器?
      但是得到相同的错误您的表单是否有隐藏的\u字段\u标记:真实性\u标记?(编辑回答)没有,但是我使用的表单\u默认情况下为真实性\u令牌提供
      隐藏字段
      。我的布局中已经有了
      csrf\u meta\u标记
      ,并且在我的应用程序控制器中也有
      protect\u from\u fagery
      。您是否使用
      :with
      和protect\u from\u fagery?我已经尝试过这种方法
      在筛选之前跳过\u:验证\u真实性\u令牌,如果::设计\u控制器?
      但是得到相同的错误表单是否有隐藏的\u字段\u标记:真实性\u令牌?(编辑的答案)没有,但我使用的是form_,默认情况下,它为Authority_令牌提供了
      隐藏字段
      。这是网络问题。我们的网络管理员在防火墙上做了一些更改,这就是它导致问题的原因。这也会影响其他站点。这是网络问题。我们的网络管理员在防火墙上做了一些更改,这就是它导致问题的原因。这也会影响到其他网站扫描你详细阐述?这将对我和许多经历过同样问题的人非常有帮助。你能详细说明一下吗?这将对我和许多经历过同样问题的人非常有帮助