【发布时间】:2013-02-24 04:41:02
【问题描述】:
我正在使用 Rails 3,并且我已经成功构建了一个 web api。对于一堆控制器需要登录,所以我决定使用 Devise 和 token_authenticable。它正在工作,但并不完全符合我的预期:虽然我需要为每个请求提供我的登录令牌,但它看起来只需要一次,然后系统在响应中创建一个 cookie,就像正常的浏览器会话一样。我想实现像 facebook graph api 这样的东西,每个请求都需要提交会话令牌才能工作。
是否可以设置任何标志来指示 Devise 在我使用 Web api 时不发送会话 cookie 并在我使用浏览器时发送会话 cookie?
【问题讨论】:
-
如果它发送了一个会话 cookie 而你忽略了它 --- 有什么坏处吗?
-
也不错。事实上,这就是它目前的工作方式。这绝对不是生死攸关的问题……我只是好奇
-
如果您将会话存储在数据库(或 memcache 或其他)中,每次签署用户时,您都会在基础中添加一行。因此,如果您的 API 被广泛使用,这可能是一个问题。因此,如果您可以登录用户但不存储会话,那就太好了。
标签: ruby-on-rails devise session-cookies access-token