1. 请求方式
请求方式:POST
数据格式:multipart/form-data
2. 加密规则
API 请求在通过 Internet 发送的过程中极有可能被篡改。为了确保请求未被更改,我们会要求用户在每个请求中带上签名,来校验参数或参数值在传输途中是否发生了更改。
以获取委托单接口为例:
如何对请求参数进行签名,用户提交的参数除sign外,都要参与签名。
首先,将待签名字符串要求按照参数名进行升序排序(首先比较所有参数名的第一个字母,按abcd顺序排列,若遇到相同首字母,则看第二个字母,以此类推)。
例如:对于如下的参数进行签名 api_key=376892265asdad5d12726d8bbfbd8912b3&nonce=309127×tamp=1510235730 再拼接上申请的api_secret(只写值,不需要写变量名,不需要写'&')
例如: api_secret=aQmE8U7bxj16KdJcSd3yX8F8Sakd8aO6LopnHXh27d4kWyb28PxcaTvGrajLDvAw
拼接后的签名串: api_key=376892265asdad5d12726d8bbfbd8912b3&nonce=309127×tamp=1510235730aQmE8U7bxj16KdJcSd3yX8F8Sakd8aO6LopnHXh27d4kWyb28PxcaTvGrajLDvAw
注意,"sign"为签名必传参数,调用md5前不要url编码,且勿将api_secret通过接口发送,以防泄漏
最后,是利用32位md5算法,对最终待签名字符串进行签名运算,从而得到签名结果字符串(该字符串赋值于参数sign)。
3. 接口请求基础参数
参数 | 是否必传 | 类型 | 说明 |
---|---|---|---|
api_key | 是 | string | 用户申请的api_key |
nonce | 是 | int | 接口随机数,仅限六位随机数 |
timestamp | 是 | int | 请求接口秒级时间戳,仅接收十秒内的请求(以香港时间为准) |
sign | 是 | string | 签名 |