github 第三方登录

第三方登录先了解 OAuth 2.0

OAuth 协议的认证和授权的过程如下:

1.用户打开我的博客后,我想要通过GitHub获取改用户的基本信息
2.在转跳到GitHub的授权页面后,用户同意我获取他的基本信息
3.博客获得GitHub提供的授权码,使用该授权码向GitHub申请一个令牌
4.GitHub对博客提供的授权码进行验证,验证无误后,发放一个令牌给博客端
5.博客端使用令牌,向GitHub获取用户信息
6.GitHub 确认令牌无误,返回给我基本的用户信息
7.oauth 详情介绍

登录GitHub 进入创建应用:

在这里插入图片描述
在这里插入图片描述

代码操作:

第一步:引导用户跳转 github 授权登录页面

GET: https://github.com/login/oauth/authorize?client_id=xxxxx&state=xxx&redirect_uri=xxxx;

(client_id 上面已经拿到了,state参数随便传多少,redirect_uri 就是你上面填的Authorization callback URL)

第二步: 用户授权后重定向 我们平台【回调地址】,返回code 参数值,通过code 再次访问 github

POST:https://github.com/login/oauth/access_token?client_id=xxx&client_secret=xxx&code=xxx&redirect_uri=回调地址

(这次会得到响应的access_token)

第三步:通过获取的access_token 换取 用户信息

GET: https://api.github.com/user?access_token=xxx;

第四步:得到github授权用户的个人信息,就可以插入到我们的数据库中去了,授权登录成功,跳转主页

最后一张图

在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐