0

所以这是场景:

用户可以通过设备登录正常登录。登录后,用户仪表板已嵌入闪存,可在同一服务器上调用 api(当前均位于 localhost:3000)。

使用 devise 的 token_authenticable 使用提供的 auth_token 调用 API。

问题就出现在这里。

一旦发出 API 请求,登录的用户就会被注销。

我已经做了很多挖掘工作,但没有找到任何关于如何解决这个问题的可靠线索。

我认为问题是因为对 API 的调用覆盖了浏览器设置的用户 cookie。我通过观察 auth cookie 被设置并在调用 API 后被覆盖来测试这一点。

仅供参考,我正在使用 Chrome 进行开发。

任何帮助是极大的赞赏。如果我没有详细说明,请告诉我是否可以提供任何其他信息来帮助您诊断问题。

非常感谢

4

1 回答 1

3

我认为问题在于您没有将 CSRF 令牌发布到您的服务器。CSRF 保护在所有 Rails 应用程序上默认开启。您可以通过在控制器中添加以下行来绕过它。

skip_before_filter  :verify_authenticity_token
于 2013-02-24T08:25:51.320 回答