我对控制器进行了ajax调用以检查身份验证,当没有身份验证时,它会将调用发送到signin控制器,该控制器检查它是否是xhr请求。如果是,它将包含page.redirect_to的rjs呈现到signin路径,主窗口将重定向到signin页面。这在谷歌浏览器中完美无缺,但在Firefox中失败了。
rjs文件中唯一的代码是:
page.redirect_to("http://localhost:3000/signin")
正如我所说,它在chrome中完美运行但Firefox(v3.6)拒绝重定向主窗口。有没有人对如何在Firefox中使用它有任何想法?
答案 0 :(得分:1)
控制台中是否出现任何错误?
回复“js”并使用以下内容呈现js模板会不会更容易:
window.location = "http://localhost:3000/signin"
在一点切线上,你真的应该重定向到“localhost:3000”吗?也许有不同的解决方案?
答案 1 :(得分:1)
您可能需要处理来自ajax请求的响应并通过JavaScript重定向:
window.location = urlToDirectTo;
我认为大多数浏览器都会重定向ajax请求本身,而不是重定向ajax请求的页面。 Here's an answer以类似问题详述解决方案。