Don't forget that you have had a dream

    

web网站接入Gitee第三方登录

web网站接入Gitee第三方登录

官方文档地址

API文档:https://gitee.com/api/v5/swagger#/getV5ReposOwnerRepoStargazers?ex=no
OAuth文档:https://gitee.com/api/v5/oauth_doc

创建应用

如何创建应用就不说了,与github类似,

OAuth2 获取 AccessToken 认证步骤

  • 应用通过 浏览器 或 Webview 将用户引导到码云三方认证页面上( GET请求 )
  • 用户对应用进行授权
  • 码云认证服务器通过回调地址{redirect_uri}将 用户授权码 传递给 应用服务器 或者直接在 Webview 中跳转到携带 用户授权码的回调地址上,Webview 直接获取code即可
  • 应用服务器 或 Webview 使用 access_token API 向 码云认证服务器发送post请求传入 用户授权码 以及 回调地址( POST请求 )
  • 码云认证服务器返回 access_token

应用通过 access_token 访问 Open API 使用用户数据。
当 access_token 过期后(有效期为一天),你可以通过以下 refresh_token 方式重新获取 access_token( POST请求 )
https://gitee.com/oauth/token?grant_type=refresh_token&refresh_token={refresh_token}

通过access_token获取用户信息

GET请求 模拟http get请求

https://gitee.com/api/v5/user?access_token={access_token}

奉上源码

// 用户登录
public function gitee()
{
    if (isset($_GET['code'])) {
        $access_token_url = 'https://gitee.com/oauth/token';
        $params = array( 
            'grant_type'    => 'authorization_code',
            'code'          => $_GET['code'],
            'client_id'     => self::GITEE_CLIENT_ID,
            'redirect_uri'  => 'https://www.whongbin.cn/admin/oauth/gitee.html',
            'client_secret' => self::GITEE_CLIENT_SECRET
        );
        $res = json_decode(getHttpResponsePOST($access_token_url, $params),true);
        $access_token = $res['access_token'];
        if ($access_token) {
            $info_url = 'https://gitee.com/api/v5/user?access_token='.$access_token;
            $info = json_decode(getHttpResponseGET($info_url),true);
            // 处理数据
        }
    }
}  

上面代码中的curl请求在这篇文章中已经贴出来了 web网站接入GitHub第三方登录(踩坑)

您可以自由的转载和修改,但请务必注明文章来源并且不可用于商业目的。
本站部分内容收集于互联网,如果有侵权内容、不妥之处,请联系我们删除。敬请谅解!
所有原创文章采用 知识共享署名-非商业性使用 4.0 国际许可协议 知识共享许可协议 进行许可。

评论已关闭

  更新日志

博客banner下方滚动文字替换为使用 一言API 随机获取 --- updated on 2019-05-22 09:04:31 星期三

  关于博主

三里林,一个致力于分享,分享心得,分享技术,分享知识点的个人博客

  近期评论

  分类目录

一个人之所以幸福,并不是他得天独厚,只是那个人心想着幸福,为忘记痛苦而努力,为变得幸福而努力。

记性太好,有时候是一种负担。容易忘记往事的人,是幸福的。

弱小和无知,都不是生存的障碍,傲慢才是。

钱塘风雨起苍黄,贺鸡儿楠过大江

人类的悲欢并不相通,我只是觉得他们吵闹。

人红是非多,人傻当枪使。人蠢猛跟风,人笨不自知。

生前哪管身后事,浪得几日是几日。

想你想到手都断了…