用户会话接口
主要使用场景:第三方应用接入公共服务体系后,需要与平台会话保持一致时使用
1、创建用户会话Ticket
根据用户登录会话usessionId创建一个Ticket给外部应用,外部应用拿到这个Ticket后可以获取当前登录的用户信息
请求说明
url |
/userSession/createTicket |
协议 |
post |
参数说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
usessionId |
必选 |
String |
唯一标识一个登录用户 |
返回说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
retCode |
必选 |
String |
返回码
000000:成功
200001: 必选参数为空
300006: 用户会话票据失效 |
2 |
retDesc |
必选 |
String |
返回码描述 |
3 |
data |
必选 |
String |
返回JSON |
3.1 |
ticket |
可选 |
String |
用户登录体系临时会话票据,默认时间2分钟有效,主要是平台传递给应用使用 |
示例
请求报文:
{
"usessionId":"9d82a9ca-8dfa-4d3f-8834-43887a73c2e2"
}
应答报文:
{
"retCode": "000000",
"retDesc": "success",
"data": {
"ticket": "eUg3OTQ1OWVjMjItZDdjYy0xMWU2LTk5YzctODQzYTRiMzI4NWVlMTQ4NDExODQzNDE3NQ=="
}
}
2、验证用户会话Ticket
外部应用拿到会话Ticket后,通过该接口验证Ticket是否有效并且获取用户信息,验证成功后ticket失效
请求说明
url |
/userSession/validaTicket |
协议 |
post |
参数说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
ticket |
必选 |
String |
用户登录平台会话票据,验证成功后失效 |
返回说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
3 |
data |
可选 |
JSON |
用户信息JSON |
1 |
retCode |
必选 |
String |
返回码
000000:成功
200001: 必选参数为空
300005: 用户不存在或密码错误 |
2 |
retDesc |
必选 |
String |
返回码描述 |
3.1 |
userId |
可选 |
String |
体系唯一用户Id |
3.2 |
name |
可选 |
String |
用户姓名 |
3.3 |
gender |
可选 |
String |
性别:1-男;2-女 |
3.4 |
dafaultIdentity |
可选 |
String |
默认身份信息(0:学生,1:老师,2:家长,3:学校工作人员:4:机构工作人员) |
3.5 |
orgRelList |
可选 |
JSON[] |
用户与机构关系列表 |
3.5.1 |
orgName |
可选 |
String |
机构或者学校名称 |
3.5.2 |
orgIdentity |
可选 |
String |
机构身份信息(0:学生,1:老师,2:家长,3:学校工作人员:4:机构工作人员) |
3.5.3 |
type |
可选 |
String |
当前平台登录用户(1:是 0:否) |
3.5.4 |
sysCode |
必选 |
String |
区域编码 |
3.5.5 |
orgId |
必选 |
String |
机构ID |
3.5.6 |
provinceCode |
必选 |
String |
区域编码-省 |
3.5.7 |
cityCode |
必选 |
String |
区域编码-市 |
3.5.8 |
areaCode |
必选 |
String |
区域编码-区 |
3.5.9 |
platUserId |
必选 |
String |
平台用户ID |
示例
请求报文:
{
"ticket":"OUhuOGJmOTNiYjktODNlNS00NWM5LWI5M2ItYjk4M2U1NTVjOWVmMTU2MzQzNjgxNTE0MQ=="
}
应答报文:
{
"retCode": "000000",
"retDesc": "成功",
"data": {
"userId": "20f8a822230a4587b8a822230a15877a",
"name": "方**",
"gender": "2",
"dafaultIdentity": "1",
"sysCode": "0",
"orgRelList": [
{
"orgId": "8a3bda1625e640989e55dd2ba6cae6d4",
"orgName": "某某中学",
"orgIdentity": "1",
"type": "1",
"provinceCode": "340000",
"cityCode": "341700",
"areaCode": "341723"
}
],
"platUserId": "be7120f2641f4961b452506743b772a4"
}
}
3、用户会话心跳
客户端与服务器之间定时维护用户心跳
请求说明
url |
/userSession/heartBeat |
协议 |
post |
参数说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
usessionId |
必选 |
String |
登录会话id,登录后默认2小时有效;调用心跳接口后保持2小时有效。 |
返回说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
retCode |
必选 |
String |
结果
000000:成功
200001: 必选参数为空
300006: 用户会话票据失效 |
2 |
retDesc |
可选 |
String |
结果描述 |
示例
请求报文:
{
"usessionId":"00000-0SFFD-GDFDFS-SF******"
}
应答报文:
{
"retCode":"000000",
"retDesc":"成功"
}
4、获取登录用户信息
外部应用根据用户会话id获取当前登录的用户信息
请求说明
url |
/userSession/getLoginUserInfo |
协议 |
post |
参数说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
usessionId |
必选 |
String |
唯一标识一个登录用户 |
返回说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
retCode |
必选 |
String |
返回码
000000:成功
200001: 必选参数为空
300005: 用户不存在或密码错误 |
2 |
retDesc |
必选 |
String |
返回码描述 |
3 |
data |
可选 |
JSON |
用户信息JSON |
3.1 |
userId |
可选 |
String |
体系唯一用户Id |
3.2 |
name |
可选 |
String |
用户姓名 |
3.3 |
gender |
可选 |
String |
性别:1-男;2-女 |
3.4 |
dafaultIdentity |
可选 |
String |
默认身份信息(0:学生,1:老师,2:家长,3:学校工作人员:4:机构工作人员) |
3.5 |
orgRelList |
可选 |
JSON |
用户与机构关系列表 |
3.5.1 |
orgName |
可选 |
String |
机构或者学校名称 |
3.5.3 |
usessionId |
必选 |
String |
唯一标识一个登录用户 |
3.5.2 |
orgIdentity |
可选 |
String |
用户身份信息列表(0:学生,1:老师,2:家长3:学校工作人员:4:机构工作人员) |
3.5.5 |
orgId |
必选 |
String |
机构ID |
3.5.4 |
sysCode |
必选 |
String |
区域编码 |
3.5.6 |
type |
必选 |
String |
当前平台登录用户(1:是 0:否) |
3.5.7 |
provinceCode |
必选 |
String |
区域编码-省 |
3.5.8 |
cityCode |
必选 |
String |
区域编码-市 |
3.5.9 |
areaCode |
必选 |
Stirng |
区域编码-区 |
3.5.10 |
platUserId |
必选 |
String |
平台用户ID |
示例
请求报文:
{
"usessionId":"7c12e4ee-36ee-4f33-92e4-ee36ee5f33ce"
}
应答报文:
{
"retCode": "000000",
"retDesc": "成功",
"data": {
"usessionId": "7c12e4ee-36ee-4f33-92e4-ee36ee5f33ce",
"userId": "20f8a822230a4587b8a822230a15877a",
"name": "李**",
"gender": "2",
"dafaultIdentity": "1",
"sysCode": "0",
"orgRelList": [
{
"orgId": "8a3bda1625e640989e55dd2ba6cae6d4",
"orgName": "某某中学",
"orgIdentity": "1",
"type": "1",
"provinceCode": "340000",
"cityCode": "341700",
"areaCode": "341723"
}
],
"platUserId": "be7120f2641f4961b452506743b772a4"
}
}
5、获取体系会话
第三方应用传递用户的实名认证信息进行实名判断,已经实名的用户可获取体系会话。
请求说明
url |
/userSession/validateSession |
协议 |
post |
参数说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
userId |
必选 |
String |
平台用户id |
2 |
loginAccount |
必选 |
String |
平台登录账号 |
3 |
sysCode |
可选 |
String |
系统编码(当调用者为国家平台时,该字段为必填) |
4 |
name |
可选 |
String |
用户真实姓名 |
5 |
idCardNo |
可选 |
String |
身份证号码 |
6 |
phone |
可选 |
String |
实名认证的手机号 |
返回说明
序列号 |
字段名 |
约束 |
类型 |
说明 |
1 |
retCode |
必选 |
String |
返回码
000000:成功
200001:必选参数为空
300027:该用户未实名请跳转实名页面进行认证 |
2 |
retDesc |
必选 |
String |
返回码描述 |
3 |
data |
必选 |
String |
返回信息json |
3.1 |
usessionId |
可选 |
String |
体系用户会话Id(已认证) |
3.2 |
ticket |
可选 |
String |
用户登录体系临时会话票据,默认时间2分钟有效,主要是平台传递给应用使用。 |
3.3 |
certUrl |
可选 |
String |
实名认证页面url(未认证) |
示例
请求报文:
{
"userId": "1234",
"loginAccount": "12345678901"
}
应答报文:
{
"retCode": "000000",
"retDesc": "success",
"data": {
"usessionId": "0040032E20184955GHJHK9EACA1501F8F",
"ticket": "eUg3OTQ1OWVjMjItZDdjYy0xMWU2LTk5YzctODQzYTRiMzI4NWVlMTQ4NDExODQzNDE3NQ=="
}
}
6、获取体系会话
第三方应用传递用户的实名认证信息进行实名判断,已经实名的用户可获取体系会话。
请求说明
url |
/cert/validateSession |
协议 |
post |
参数说明
返回说明
示例
请求报文:
{
"userId": "1234",
"loginAccount": "12345678901"
}
应答报文:
{
"retCode": "000000",
"retDesc": "success",
"data": {
"usessionId": "0040032E20184955GHJHK9EACA1501F8F",
"ticket": "eUg3OTQ1OWVjMjItZDdjYy0xMWU2LTk5YzctODQzYTRiMzI4NWVlMTQ4NDExODQzNDE3NQ=="
}
}