Ruby on rails 警告:Can';t验证CSRF令牌的真实性

Ruby on rails 警告:Can';t验证CSRF令牌的真实性,ruby-on-rails,ssl,devise,Ruby On Rails,Ssl,Devise,信息: 我在搞发展。在http上的端口3000上运行。 在我的登录页面上,唯一的会话信息为= :_csrf_token "JISqEbDHAxteJM2E96/S/9iimgBLwVsLP37CpvIBo/A=" 登录表单包含此隐藏元素: <input name="authenticity_token" type="hidden" value="JISqEbDHAxteJM2E96/S/9iimgBLwVsLP37CpvIBo/A="> 所以CSRF似乎是匹配的。但当我

信息: 我在搞发展。在http上的端口3000上运行。 在我的登录页面上,唯一的会话信息为=

:_csrf_token    "JISqEbDHAxteJM2E96/S/9iimgBLwVsLP37CpvIBo/A="
登录表单包含此隐藏元素:

<input name="authenticity_token" type="hidden" value="JISqEbDHAxteJM2E96/S/9iimgBLwVsLP37CpvIBo/A=">

所以CSRF似乎是匹配的。但当我输入用户名和密码时,首先它会显示警告:无法验证CSRF令牌的真实性,然后在日志中我看到它更新了我的“上次登录”,这让我相信它已成功登录<正在调用代码>设计::会话控制器#创建

我已经证实的事情:
  • app/views/layouts/application.html.erb
    中有
  • jquery\u ujs.js
    正在页面上加载,我相信这会将CSRF信息添加到任何jquery ajax请求中

  • 在这个问题出现的时候,我开始搞乱我的应用服务器

    这不是根本原因,但更高层次的原因是我没有使用SSL证书为其提供服务。不知何故,这导致了它不起作用。一旦我将SSL而不是HTTP添加到我的开发应用程序中,一切又开始工作了。有人知道为什么吗