1. 描述
创建应用令牌。
2. 调用场景
开发者登录超级控制台后,显示自己的APP列表,进入某个APP,然后可以Super角色创建自己的令牌。
接下来说明一下创建令牌的场景顺序:
- 登录 http://consolex.xdua.com
- 在
应用管理->应用管理
菜单下查看开发者自己创建的所有应用。 - 在相关应用的"令牌列表"里点击,页面跳到
应用管理->令牌管理
页面,并看到这个应用下的所有令牌 - 点击右上角
创建令牌
,开始创建令牌。
3. URL
POST: http://api.kernel.xdua.com/token
4. 请求参数
名称 | 位置 | 类型 | 必填 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|---|
typ | body | string | 是 | L | 令牌种类,L=登录令牌 | |
aud | body | string | 是 | ConsoleE |
令牌应用ID,这个令牌用于哪个应用ID | |
sap | body | string | 是 | SvKerneL |
服务应用ID,这个令牌用于访问那个服务 | |
jti | body | string | 是 | 12345678 | 令牌防重放字串。一个<=8个字符(数字或字母)的魔法数字。用于跟踪令牌使用。 | |
ipm | body | string | 是 | * | 令牌IP白名单,如果填* ,表示所有ip来源都可以。 |
|
dvm | body | string | 是 | * | 令牌设备白名单,如果填* ,表示所有设备都可以。 |
|
tag | body | string | 是 | * | 令牌标签,用户自己定义。 | |
api | body | string | 是 | * | 令牌能用于哪个接口,* | |
bug | body | string | 是 | * | 返回所有调试信息. | |
shop | body | string | 是 | EldrCaRE |
令牌活跃的店铺 | |
role | body | string | 是 | * | 令牌持有的角色。填"*",表示这个令牌能获取的最大角色集合。 | |
rule | body | string | 是 | * | 令牌持有的权限。填"*",表示这个令牌能持有它能获取的最大权限集合。 |
5. 返回参数
名称 | 位置 | 类型 | 示例 | 说明 |
---|---|---|---|---|
id | result | string | rYub4wrT | 创建的令牌ID |
6. 错误码
7. 示例
在consolex控制台创建admin.manhu.cn的登录令牌
这里创建的令牌是登录令牌
,也就是目前唯一需要创建的令牌。页面需要如下填写:
名称 | 值 | 描述 |
---|---|---|
typ | L |
这是一个登录令牌 |
aud | 应用id | 要创建登录令牌的应用的id,在控制台,我们是从应用列表 点击相关的应用才进来的,所以天然带应用ID. |
sap | SvKerneL |
要访问的服务APP,*表示所有 |
jti | 12345678 |
令牌防重放字符串,目前写成常数字符串12345678 |
ipm | * |
本令牌不限ip |
dvm | * |
本令牌不限设备 |
tag | Primary |
常数 |
api | * |
本令牌不限接口 |
bug | * |
本令牌执行结果返回所有调试信息 |
shop | EldrCaRE |
慢护通所在社区 |
role | * |
本令牌不限制角色 |
rule | * |
不令牌不限制权限 |
const api_param = {
typ : "L",
aud : "AdmManHu",
sap : "SvKerneL",
jti : "12345678",
ipm : "*",
dvm : "*",
tag : "Primary",
api : "*",
bug :"*",
shop :"EldrCaRE",
role :"*",
rule :"*"
}
res2 = await xduaClient.addToken(api_param)
if(res2.error == 0){
console.log(api_name+"成功");
console.log(res2);
}else{
console.log(res2);
console.log(api_name+"失败 "+res2.reason);
}
//返回的数据格式
{
status: 200,
apid: '9EFAC845-2AC5-47BE-98A3-48E1B334FCF4',
apis: 'AddToken',
error: 0,
result: { id: 'C19MMasL' },
debug: [],
message: 'message',
reason: 'success'
}