如何在 rails 应用程序中存储 github access_token?
How to store github access_token in rails app?
我想将 GitHub OAuth 集成到我的 rails 应用程序中,我不想使用第三方 gems,例如 OmniAuth、warden-github 等等.根据GitHub Basics of Authentication,我得到了access_token。指南将 access_token 存储到会话:
...
session[:access_token] = JSON.parse(result)['access_token']
...
但是如果另一个用户通过github账号登陆我的app,session[:access_token]的值会被覆盖,这种情况怎么处理?希望大神指教, 提前致谢!
正如@dimakura 和@Max Williams 所指出的那样 - Rails 将数据存储在其 session
对象中的 cookie 中,该 cookie 存储在 client/user 的计算机上.因此,每个用户都将拥有自己的 session[:access_token]
,您可以使用它来为该特定用户执行对 GitHub API 的调用。
关于 Rails 如何使用 session
对象的更详尽的描述,我强烈推荐 Justin Weiss 的 this article。
我想将 GitHub OAuth 集成到我的 rails 应用程序中,我不想使用第三方 gems,例如 OmniAuth、warden-github 等等.根据GitHub Basics of Authentication,我得到了access_token。指南将 access_token 存储到会话:
...
session[:access_token] = JSON.parse(result)['access_token']
...
但是如果另一个用户通过github账号登陆我的app,session[:access_token]的值会被覆盖,这种情况怎么处理?希望大神指教, 提前致谢!
正如@dimakura 和@Max Williams 所指出的那样 - Rails 将数据存储在其 session
对象中的 cookie 中,该 cookie 存储在 client/user 的计算机上.因此,每个用户都将拥有自己的 session[:access_token]
,您可以使用它来为该特定用户执行对 GitHub API 的调用。
关于 Rails 如何使用 session
对象的更详尽的描述,我强烈推荐 Justin Weiss 的 this article。