1.手机号+密码实现登录
2.读者证号+密码登录
3.身份证号+密码登录
通过跳转图创公众号进行登录授权,是需要跳转图创公众号进行授权认证
如果第三方公众号想要获取用户信息,可以通过网页授权的机制,来获取用户基本信息,进而实现业务逻辑。
引导关注者打开如下页面(参考链接):
http://tcc-dev.interlib.com.cn/wx-web/external/auth?appid=APPID&url=REDIRECT_URI
备注:
参数说明
参数 | 是否必须 | 说明 |
---|---|---|
appid | 是 | 应用唯一标识 |
redirect_uri | 是 | 授权后重定向的回调链接地址, 请使用 urlEncode 对链接进行处理 |
尤其注意:跳转回调redirect_uri,应当使用https链接来确保授权code的安全性。
如果页面授权成功,页面将跳转至 redirect_uri/?code=CODE
code说明 : code作为换取access_token的票据,每次用户授权带上的code将不一样,code只能使用一次,10分钟未被使用自动过期。
首先请注意,这里通过code换取的是一个特殊的网页授权access_token,与基础支持中的access_token(该access_token用于调用其他接口)不同。公众号可通过下述接口来获取网页授权access_token。该access_token仅用于换取对应的用户信息。
请求方式: GET(HTTPS)
请求地址:http://tcc-dev.interlib.com.cn/api/tcc-open-platform/oauth2/client/accessToken?appId=ID&secret=SECRET&code=CODE
参数说明
参数 | 是否必须 | 说明 |
---|---|---|
appId | 是 | 应用唯一标识 由管理员创建应用并派发(int类型) |
secret | 是 | 应用密钥 由管理员创建应用并派发 |
code | 是 | 步骤一中回调返回的参数 |
返回说明
正确时返回的JSON数据包如下
{
"code": 200,
"data": {
"token": "accessTokenxxxxxxxxxxxxxxx",
"expiresIn": "7200"
},
"desc": "操作成功"
}
参数 | 说明 |
---|---|
code | 状态码,200为成功,非200为失败 |
desc | 描述 |
data | 返回数据 |
token | accessToken |
expiresIn | 过期时间,单位秒 |
则此时开发者可以通过access_token拉取用户信息了。
请求方式: GET(HTTPS)
请求地址:http://tcc-dev.interlib.com.cn/api/tcc-open-platform/oauth2/client/userInfo
在获取accessToken后,后续的请求中需要在请求头中携带ACCESS-TOKEN,否则平台会拒绝请求。
curl -X GET "https://tcc-dev.interlib.com.cn/api/tcc-open-platform/oauth2/client/userInfo" -H "accept: */*" -H "ACCESS-TOKEN: accessToken"
返回说明
正确时返回的JSON数据包如下
{
"code": 200,
"data": {
"userId": "1",
"userName": "testUserName",
"nickName": "testNickName",
"mobilePhone": "12345678910",
"headPic": "https://xxx/photo.jpg"
},
"desc": "操作成功"
}
参数 | 说明 |
---|---|
code | 状态码,200为成功,非200为失败 |
desc | 描述 |
data | 返回数据 |
userId | 用户唯一标识 |
userName | 用户名 |
nickName | 用户昵称 |
mobilePhone | 手机号码 |
headPic | 头像地址 |
小程序暂只实现了将数据推送到中台,无法进行登录方式的校验、因小程序比较特殊, 图创中台提供addUser方法,不是所有的用户都会新增,这边只保存了用户手机号不为空的信息,避免脏数据的产生。