第三方认证(本文档中,出现第三方,通常指非每刻的对接方,如商旅平台 TMC 等)
- 接口(建议后缀): /platform/auth/login
- Method-Type:POST
- 数据格式:Json
- 调用方:每刻
- 接口说明:目前支持第三方认证的方式为 Maycur_Auth,第三方需要分配给每刻,code 与 secretKey,每刻通过该接口获取到 token,接下来的接口调用的请求头中都将带上 token。
请求参数
参数 | 类型 | 必须 | 描述 |
---|---|---|---|
code | String | Y | 认证 key [1] |
timestamp | long | Y | 时间戳(毫秒级) |
sign | String | Y | 签名(小写) |
[info] 说明:
[1] 目前有两种认证 key
- 第三方平台级别的认证:在对接联调时给出,用来做企业开通,企业开通后,后续的接口都将使用企业级别的认证;
- 企业级的认证:企业开通时,第三方可以在接口中将企业认证的 code 返回,详细请看企业开通。
签名的计算方式:
sign = md5(code + “:” + secretKey + “:” + timestamp)例如:
code = 0123456
timestamp = 1624413761747
secretKey = a24d21586c754345hash 前的字符串:
0123456:a24d21586c754345:1624413761747hash 后的结果:
f977a24c2b90ec999a78d131d88152a0
响应结构
参数 | 类型 | 必须 | 描述 |
---|---|---|---|
success | bool | Y | 请求是否成功 |
errorMessage | String | N | 失败信息(如果 success 为 false, 该值为必填) |
data | Token | Y | token 信息 |
Token
参数 | 类型 | 必须 | 描述 |
---|---|---|---|
token | String | Y | token [2] |
expireTime | long | Y | 过期时间 (单位为秒, -1 表示永远有效,限制最大 1 天,即 86400)[3] |
[info] 说明:
[2] 在后续的所有接口都会使用 token 加签, 使用的方法是在 headers 中带上 tokenId。
[3] expireTime 为距离过期的时间,而不是过期时间点。限制最大 1 天,如果超过一天则默认过期时间为 30 分钟,即 1800 秒。
请求示例:
{
"code": "XXXXXXXXXXXX",
"timestamp": 1624413761747,
"sign": "f977a24c2b90ec999a78d131d88152a0"
}
响应示例:
{
"success":true,
"errorMessage":"",
"data": {
"token": "xxxxxxxxxxxxxxxxxxxx",
"expireTime": 86400
}
}