获取 Access Token

​通过应用的AccessKey和SecretKey获取Access Token。

Access Token与AccessKey对应。通常,一个AccessKey对应一个Access Token,即,如果已经生成了一个Access Token,再次调用获取Access Token接口后,依然会返回已经生成的Access Token。

前提条件

登录EnOS管理门户,通过应用注册,获取应用的AccessKey和SecretKey,作为接口中 appKeyappSecret 参数的值,用于调用置换服务的外部接口,获取Access Token。

请求格式

POST https://{apigw-address}/apim-token-service/v2.0/token/get

请求参数(Body)

名称 必需/可选 数据类型 描述
appKey True String 应用的AccessKey
encryption True String 加密密文,参考 加密密文生成规则>>
timestamp True Long 当前系统的时间戳,UNIX时间,精确到毫秒,例如:1572574909697

加密密文生成规则

  1. 依次拼接 appKeytimestampappSecret的值,生成一个待加密串。

  2. 使用 SHA256 算法加密待加密串生成预密文。

  3. 将预密文转换成小写字母,生成加密密文。伪代码如下:

    sha256(appKey+timestamp+appSecret).toLowerCase();
    

响应参数

名称 数据类型 描述
status Integer 状态码,0表示成功
msg String 提示信息
business String 业务参数,为固定值:apim-token-service
data data结构体 生成的Access Token及有效时间

data结构体

名称 数据类型 描述
accessToken String Access Token值
expire Integer Access Token的过期时间,单位为秒,初始值为7200秒(即2小时)

示例

请求示例

POST
https://{apigw-address}/apim-token-service/v2.0/token/get
{
    "appKey": "5acb82e7-a11e-4300-9164-c8b20b638e8b",
    "encryption": "87c6885cec7525e2f219f86a82b280cc8c2d6ff4040a4b5f8acf9aeeda37aba8",
    "timestamp": 1572574909697
}

响应示例

{
    "stauts": 0,
    "msg": "SUCCESS",
    "business": "apim-token-service",
    "data": {
        "accessToken": "Generated_Access_Token",
        "expire": 7200
    }
}