1. 令牌详情
接口功能:令牌详情(获取令牌令牌的解析结果)
请求数据格式
字段名 |
字段位置 |
字段类型 |
字段说明 |
可选 |
apiv |
head |
String |
API接口版本号:默认1.0.0 |
可选 |
Authorization |
head |
string |
签名.参考签名生成方法 |
必选 |
token |
path |
string |
token字符串 |
必须 |
BrowserSDK
const lovearth = require('../lib')
async function test_getToken() {
const dua = await lovearth({
APP_KEY: "您的appkey",
APP_SECRET: "您的appsecret",
})
token = 'eyJhbGciOiJSUzI1NiIsImtpZCI6ImI1MGIxZWZmZGMwMzVlMjg2OWI2YzQ1ZjMzYmRmNWQ3In0.eyJpYXQiOjE1NTE3MDQzNTksIm5iZiI6MTU1MTcwNDM1OSwiZXhwIjoxNTUxNzA3OTU5LCJpc3MiOiJsb3ZlYXJ0aCIsImR1YSI6IlBQamdPcjdMIiwiZGlkIjoiR1BwdmFPVEIiLCJ1aWQiOiJhbm9ueW11cyIsImFpZCI6ImFIRVZZaEUxIiwiYXVkIjoiaHR0cDovL2FkbWluLnhkdWEuY29tIiwiaXAiOiIxNTkuMjI2LjQzLjYyIiwidWEiOiJheGlvcy8wLjE4LjAiLCJ1Z3JwIjoiWGRVYVhkdUEiLCJyb2xlIjoibm9uZSJ9.Z2N1_3Lbl0B3Aj2EjndlO9Z3gQJ0xqbdSQvV05lCotb8N2ul8Q0tr36UvfqUj73JFdWX97yLAchkSmagWP0K-ywg0ApPMSBvSKy9JQu58FvNRW-kFbJTmzTKqofIsgVXH8dZ3xmkass3NlTkpZ4n7I_3ihV1NzO6n0UBTPKkbkRDfKN2EGnjRAajwhIybsC9oYBty0pfivcrlLdVNEWPcK0AtPu56kHFVklr_S5Vn0AIl7SjtciroBWJWeSZv_StGsH0qwt3k9P8gEJFPpw4osfsDsqvjs3k-7qAojSHn64icqv2iK8puMQvDLE1URrL6jJip7UZN4i10eAZYr_Iog';
api_name = "验证令牌";
res = await dua.getToken(token)
if(res.error == 0){
console.log(api_name+"成功 ");
}else{
console.log(api_name+"失败 "+res.reason);
}
console.log(res);
}
test_getToken();
返回数据格式
成功返回
字段名 |
字段类型 |
字段说明 |
verified |
int |
1=令牌是有效的 |
did |
string |
请求该令牌的设备id |
uid |
string |
令牌吃鱼者用户id。匿名令牌的用户永远是anonymus |
did |
string |
请求该令牌的设备id |
aid |
string |
请求该令牌的设备id |
aud |
string |
请求该令牌的应用的名字,本字段与aid对应 |
nbf |
int |
Not Before令牌生效时间之前 |
iss |
string |
令牌签发机关。在地球号服务中本字段为常值lovearth |
iat |
string |
令牌签发UTC时间戳 |
ip |
string |
令牌请求时客户端的ip |
ua |
string |
令牌请求时客户端的UserAgent |
exp |
int |
令牌的过期UTC时间戳。如果<=0表示永远有效。如果大于0表示具体的UTC时间。 |
vtl |
int |
令牌的剩余有效期 ValidTimeLong.0表示永远。如果exp为0,vtl就会被解释为0。如果一个非永远的token计算vtl为0时,会自动被重置为-1 |
ugrp |
string |
令牌持有用户所在的用户群,匿名用户的户群是常量:"XdUaXduA" |
role |
string |
令牌持有用户所在的角色列表,匿名用户的角色列表是常量:"none" |
{
result: {
verified:1,
data: {
did: 'GPpvaOTB',
uid: 'AnoNymus',
aid: 'aHEVYhE1',
aud: 'http:
nbf: 1551700940,
iss: 'lovearth',
ugrp: 'XdUaXduA',
iat: 1551700940,
ip: '159.226.43.62',
exp: 1551704540,
vtl: 2467,
ua: 'axios/0.18.0',
role: 'none',
dua: 'PPjgOr7L'
}
},
error: 0,
reason: 'Success'
}
失败返回
{
"error": 1,
"result": {},
"reason": "失败的时候是具体原因"
}
注,本接口用来做地球号旗下所有token的解析验证,下面解释如何用token做登陆验证
1:如果uid为"AnoNymouS"那么这个token就是匿名token,非登录状态.
2: 如果uid不是"AnoNymouS",那么看vtl,如果vtl>0,那么就是登陆状态,如果vtl<=0,那么就是过期
那如何能够完成"退出/登出/logout"时登录失效的功能呢?这时候不能依赖token的vtl,需要前端在退出时把token清掉。