签名规则
1.http请求时header发送如下参数
Api-App-Key: 123456
Api-Nonce: d1bb70baa31f1df69628c00632b65eab
Api-Sign: DEFC5D64939480F466FC195ADC57513E
Api-Time-Stamp: 1573035686519说明
Api-App-Key:应用唯一key
Api-Nonce:每次请求的唯一编号
Api-Time-Stamp:发送请求时的毫秒时间戳
Api-Sign:计算出来的签名,每次计算出来的签名有效期为1分钟2.签名计算规则
1.将Query参数(url参数,如果没有则省略)、上述规定必须的Header参数(除了Api-Sign),按照key-value形式组合在一起
例:
{
Api-App-Key: 123456
Api-Time-Stamp: 1573035686519
Api-Nonce: d1bb70baa31f1df69628c00632b65eab
}
2.以key做升序排序
例:
{
Api-App-Key: 123456
Api-Nonce: d1bb70baa31f1df69628c00632b65eab
Api-Time-Stamp: 1573035686519
}
3.将key和value按照顺序直接拼接到一起
例:
Api-App-Key123456Api-Nonced1bb70baa31f1df69628c00632b65eabApi-Time-Stamp1573035686519
如有query参数
例:
Api-App-Key123456Api-Nonced1bb70baa31f1df69628c00632b65eabApi-Time-Stamp1573035686519limit10page1search_words牙线source2
4.在上一步的结果后直接拼secretKey
例:
Api-App-Key123456Api-Nonced1bb70baa31f1df69628c00632b65eabApi-Time-Stamp1573035686519WywhCb6iYyshGBO0caWn3GLSeKloOnsn
5.在上一步结果后直接拼接,经过去除空白字符(\s)的HTTP Body原始字符串
例:
Api-App-Key123456Api-Nonced1bb70baa31f1df69628c00632b65eabApi-Time-Stamp1573035686519WywhCb6iYyshGBO0caWn3GLSeKloOnsn{"orderSn":"2019sdfsdfsdfsdfs","spu":[{"sku":1485,"number":2},{"sku":1529,"number":3},{"sku":124221,"number":4}],"address":{"consignee":"谢订","phone":"18914449343","province":"北京市","city":"北京市","area":"丰台区","street":"卢沟桥街道","description":"马官营家园1号楼1单元"}}
6.对上一步结果进行sha1加密,得到16进制字符串
例:
20e3ae128424d0cf8825ef6e4e2bdb62c6b66992
7.对上一步结果进行md5加密,得到16进制字符串
例:
0337d2b8752231b729927a36f98c6849
8.将上一步结果转为大写
例:
0337D2B8752231B729927A36F98C6849