5.1 KiB
5.1 KiB
请求概述
请求header
所有请求必须包含以下两个header:
noSign
:true
source
:api
获取登录token后,也可以在header中添加:token
:${token}
登录校验结果
接口返回结果为json格式,如果包含code
字段,则说明登录校验失败。
code
:0001
- 登录状态已失效code
:0002
- 在cookie、Get参数、Header中均未检测到token
登录接口
2.1 获取token
- API:
https://www.ab98.cn/api/doInterface?code=doGetToken&from=jt&app=${appname}
- 请求方式: GET
- 请求参数:
code
:doGetToken
(必传)from
:jt
(可选)app
: 调用该接口的应用在汇邦数字平台登记的应用英文名 (可选) 成功返回:
{
"outputData": {
"token": "1a6ea39e84c406283839856640e3aa66",
"takeFace": true
},
"state": "ok"
}
失败返回:
{
"outputData": "错误信息",
"stateCode": 0,
"state": "fail"
}
2.2 短信登录
2.2.1 发送短信
- API:
https://www.ab98.cn/api/doInterface?code=doSendSms
- 请求方式: POST
- Content-Type: application/json
- 请求BODY:
{
"token":"358900e1005c33a1dd059b07042ceec3", //必传
"tel":"137xxxxxxxx", //必传
"nobind":"true", //必传
"for_login":"true", //必传
"from":"jt" //必传
}
成功返回:
{
"outputData": {
"success": true
},
"state": "ok"
}
失败返回:
{
"outputData": {
"success": false,
"errMsg": "失败原因"
},
"state": "ok"
}
2.2.2 验证短信验证码
- API:
https://www.ab98.cn/api/doInterface?code=doCheckSmsCode
- 请求方式: POST
- Content-Type: application/json
- 请求BODY:
{
"token":"358900e1005c33a1dd059b07042ceec3",
"tel":"137xxxxxxxx",
"vcode":"123456"
}
成功返回:
{
"outputData": {
"idcard_back": "https://www.ab98.cn/upload/temp/images/202102/xxx.jpeg",
"face_img": "https://www.ab98.cn/upload/temp/images/202102/yyy.jpeg",
"address": "身份证上的地址",
"nation": null,
"success": true,
"sex": "男",
"name": "xxx",
"userid": 123,
"registered": true,
"tel": "137xxxxxxxx",
"idnum": "450981xxxxxxxxxxxx",
"idcard_front": "https://www.ab98.cn/upload/temp/images/202102/zzz.jpeg"
},
"state": "ok"
}
失败返回:
{
"outputData": {
"success": false
},
"state": "ok"
}
2.3 微信扫码登录
- API:
https://www.ab98.cn/online/index.html?content=doLogin%60
2.3.1 二维码
假设获取到的token为358900e1005c33a1dd059b07042ceec3
,则构造的最终链接为:
https://www.ab98.cn/online/index.html?content=doLogin%60358900e1005c33a1dd059b07042ceec3
使用该链接生成二维码图片供用户使用微信“扫一扫”。
2.3.2 监听websocket
- 监听地址:
wss://www.ab98.cn/login.ws/${token}
- 登录失败:
{
"outputData": "登录失败原因",
"state": "fail"
}
- 登录成功:
{
"outputData": "登录成功",
"state": "ok",
"username": "扫码者姓名",
"sex": "扫码者性别",
"head_img": "扫码者头像",
"idnum": "身份证号码",
"userid": "人员记录ID",
"tel": "手机号码"
}
2.4 刷脸登录
- API:
https://www.ab98.cn/api/doInterface?code=doStrongFaceLogin
- 请求方式: POST
- Content-Type: application/json
- 请求BODY:
{
"token":"358900e1005c33a1dd059b07042ceec3", //必传
"check_code":"1234", //必传
"imgBase64":"/9j/4AAQS…" //必传
}
成功返回:
{
"state": "ok",
"outputData": "登录成功",
"openid": "oGfFD1jBEZ2sq4PhOc8zKKejHA9E",
"head_img": "https://www.ab98.cn/… ",
"sex": "男",
"userid": 1,
"token": "dbe11ef64cd6350c5d935d531db765c0",
"username": "xxx",
"tel": "xxx"
}
2.5 动态码登录
- 发起websocket监听:
wss://www.ab98.cn/login.ws/{监听token}
其中{监听token}
由客户端自定义,由数字和英文字母组成,保证多用户同时监听时{监听token}
互不相同即可,否则会接收到错误消息。 - 主动发送消息:
{
"type": "mfa",
"do": "checkCode",
"token": "xxx",
"code": "000000"
}
服务器响应消息:
- 登录失败:
{
"state": "fail",
"msg": "失败原因"
}
- 动态码校验通过,等待移动端授权登录:
{
"state": "ok",
"step": "0"
}
- 等待移动端授权超时:
{
"state": "ok",
"step": "1"
}
- 移动端已授权登录:
{
"state": "ok",
"step": "2",
"openid": "xxx",
"head_img": "/xxx",
"sex": "男/女",
"company": "xxx",
"userid": 123,
"idnum": "xxx",
"username": "xxx",
"tel": "xxx"
}
2.6 退出登录
- API:
https://www.ab98.cn/api/doInterface?code=doLogout
- 请求方式: POST
- Content-Type: application/json
- 请求BODY:
{
"token":"358900e1005c33a1dd059b07042ceec3"
}
成功返回:
{
"state": "ok"
}