thinkphp5系列之整合 github 登录
一、注册应用(注册应用官方文档)
① 依次打开 setting > Developer settings > OAuth Apps
② 点击 Register a new application 注册一个新的应用
③ 注册应用页面需要填写【Application name(应用名称)、Homepage URL(应用链接)、Application description(应用描述)、Authorization callback URL(回调地址)】
④ 创建应用界面为下图左,应用创建完成为下图有,其中接入登录需要Client ID和Client Secret,需要妥善保存
⑤ 这里超人测试连接地址为:,回调地址:
二、操作流程
2.1 html模板页面
2.2 重定向到用户请求到github,获取code信息
需要向发送get请求,发送请求时需要携带参数:
Client_id正确的话,github将返回code,并重定向到redirect_uri:
点击html页面中git登录按钮请求地址:github/login/log中具体代码如下
2.3 通过code获取access_token
获取code之后,需要向github以post方式请求获取access_token,post参数:
如若请求有效,github将返回access_token,默认情况下,返回的数据格式如下:
如若需要返回以下 json 格式数据,需要在请求的时候设置 Accept 头信息:Accept: application/json
如若需要返回以下 xml格式 数据,需要在请求的时候设置Accept头信息:Accept: application/xml
2.4 获取登录用户信息
根据上一步获取的access_token,再get方式请求即可获取用户信息
2.4和2.5步骤代码整理如下