github access token 的生存期

我想要在我的网站上使用 github作为唯一的登录入口(而且只作登录用)

看github的 API v3后,我不知道是不是每次登录都需要获取一次code然后再post再获取accesstoken,再获取user_id

accesstoken应该有一定的生存期吧,比较好的方案是什么呢?

我是这样想的,数据库中user 表设计4个字段 : id github_id gavatar_id github_username

当用户登录的时候,请求认证并获取其github id,如果我们的数据库中已经有了,直接种session。如果没有呢,插入这个用户到数据库,然后种session.

我的疑问在于: 如果每次登录都需要发送三次请求,是不是很耗时间,我是不是需要在已登录用户的cookie中存储 access_token

阅读 7.2k
1 个回答

每次登陆都连接到github。跟微博什么的一样。否则第二次登陆或换pc。你怎么知道他是谁。
数据库里只存用户id就行了。登陆后获取id然后存点cookie就行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进