# 鉴权说明
# 验签说明
鉴权网关需要对商户进行验签操作,验签失败即调用失败。验签明文的组成一部分为你的请求包体Json串,包体必须为json格式,不要添加任何空格和换行,以防验签失败。示例请求体:
{"mobile":"13666643085","openId":"68805702089"}
# 签名步骤
- 请求体增加时间戳 (5分钟内有效)
{"timestamp":1635490727085,"mobile":"13666643085","openId":"68805702089"}
- 拼接当前时间戳,当前日期按yyyyMMddHHmmss格式化后的字符串
{"timestamp":1635490727085,"mobile":"13666643085","openId":"68805702089"}20211029150244
- 增加AppId对应的密钥,可在享道出行管理中心 (opens new window)中查看
{"timestamp":1635490727085,"mobile":"13666643085","openId":"68805702089"}20211029150244密钥
- 拼接明文,对明文做sha1生成签名,放入头部的X-Sign用以验签,详情见curl描述的请求示例
- 签名工具类: SHA1TranferUtils.zip
# HTTPS头部
参数名 | 含义 | 说明 | 必选 |
---|---|---|---|
X-Sign | 签名内容 | 调用方算出的动态签名 | 是 |
X-SignAlgorithm | 签名方式 | 1-sha1 ,2-rsa | 固定值目前传1 |
X-Timestamp | 请求时间戳 | 格式为yyyyMMddHHmmss仅接受5分钟内的时间 | 是 |
X-MerchantId | 商户身份编号 | App id及密钥会以邮件形式通知 | 是 |
Content-Type | 值:application/json | 是 |
# 响应参数
参数名 | 含义 | 说明 | 必选 |
---|---|---|---|
errCode | 响应编码 | 错误编码定义见附录5 | 是 |
errMsg | 响应信息 | 具体的错误信息 | 否 |
# 请求示例
请求
curl --location --request POST '接口地址' \
--header 'X-Sign: aba9889b5d576a22aa1709a582bc95ccf9f902cf' \
--header 'X-SignAlgorithm: 1' \
--header 'X-Timestamp: 20201020161100' \
--header 'X-MerchantId: 商户App id' \
--header 'Content-Type: application/json' \
--data-raw '{}'
响应 - 失败
{
"errCode": 10002,
"errMsg": "signature_error"
}
返回上述响应,需检查请求
- 时间戳是否在最近5分钟内
- 签名为:请求体Json+时间戳+秘钥,使用签名类生成,同时请求体不能包含空格等特殊字符
- IP白名单
- 对应接口地址的访问权限
响应 - 失败
{
"errCode": 10004,
"errMsg": "parameter_error"
}
返回上述响应,需检查接口参数是否包含所有必传参数
响应 - 成功
{
"errCode": 10000,
"errMsg": "successful",
"content": {}
}