✅P221_商城业务-认证服务-weibo登录测试
一、开篇
新浪微博开放平台-首页创建应用时需要进行邮箱验证与身份认证,由于身份认证时间过长,通常需要2-3个工作日。
而采用Gitee进行第三方登录测试,优点就是不需要身份认证就可创建应用测试。
下面会介绍微博第三方登录测试和Gitee登录实操。
二、微博登陆
2.1 进入微博开放平台
先进行登录,然后选择 ”微连接“ -> “网站接入”
2.2 选择立即接入
2.3 创建自己的应用
2.4 我们可以在开发阶段进行测试了
App Key 和 App Secret 是获取 Access token 必填的参数!
2.5 授权回调页地址
点击高级信息,填写“授权回调页”和“取消授权回调页”地址
2.6 添加测试账号(选做)
2.7 授权机制文档
按照 授权机制说明 文档,进行下面的微博授权登录测试。
点击对应的接口,会有参数说明
三、微博登陆测试
3.1 Web网站的授权流程
Web网站的授权流程均参考官方文档,涉及到的接口如下所示:
1、引导需要授权的用户到如下地址:
https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI
2、如果用户同意授权,页面跳转至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE
3、换取Access Token
https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE
其中client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET可以使用basic方式加入header中,返回值
{
"access_token": "SlAV32hkKG",
"remind_in": 3600,
"expires_in": 3600
}
4、使用获得的Access Token调用API
具体实际操作如下文步骤所示;
3.2 获取CODE值
修改登录界面图标以及新增“引导需要授权的用户到如下地址”,
cfmall-auth-server/src/main/resources/templates/login.html
首先点击商城首页右上角:”您好,请登录“,
点击微博进行授权
观察地址栏,会生成一个code值,即用来获取AccessToken的一个请求参数,页面跳转至如下图所示,
3.3 获取AccessToken
注意,上面这个是 post 请求
{
"access_token": "2.008QHRUG0hS4W2aca619f9092s1doD",
"remind_in": "157679999",
"expires_in": 157679999,
"uid": "5944166575",
"isRealName": "true"
}
3.4 使用 AccessToken 调用开发 API 获取用户信息
至此微博登陆调试完成。
Oauth2.0;授权通过后,使用 code 换取 access_token,然后去访问任何开放 API
- code 用后即毁;
- access_token 在几天内是一样的;
- uid 永久固定;
四、Gitee登录
4.1 官方文档
点击首页下方的OpenAPI
点击OAuth
文档,创建应用
4.2 创建应用
1、在 修改资料 -> 第三方应用,创建要接入码云的应用
2、填写应用相关信息,勾选应用所需要的权限。其中: 回调地址是用户授权后,码云回调到应用,并且回传授权码的地址
3、创建成功后,会生成 Cliend ID 和 Client Secret。他们将会在上述OAuth2 认证基本流程用到,对应client_id
和client_secret
请求参数
4.3 登录流程测试
选择Gitee进行登录
OAuth 授权请求
点击同意授权
后,会返回code值
获取 access_token
测试
说明:code只能使用一次,access_token只能一段时间有效
下面会继续进行社交登录回调的编写与测试工作。