从Rails 3.2升级到Rails 4.1后,我开始收到以下错误:
ActionController :: InvalidCrossOriginRequest:安全警告:另一个站点上的嵌入式标记请求受保护的JavaScript。如果您知道自己在做什么,请继续并禁用此操作上的伪造保护以允许跨源JavaScript
它们主要来自Windows XP上的Internet Explorer 6或8浏览器,并且永远不会附带用户信息,即使他们正在访问仅向登录用户显示的控制器操作。
如何解决此问题或解决此问题?
(另请参阅升级前的相关问题:Why does Rails Fail to access the Session in an Ajax request from Internet Explorer?)
答案 0 :(得分:20)
根据"远程标签的CSRF保护"来自导轨指南:
如果是测试,您也在做客户端,请改为:
get:index,format :: js
要:
xhr:get,:index,format :: js
如果您想要使此路线跳过csrf检查,白色会使用以下内容列出路线:
protect_from_forgery :except => :create