# 协议架构.
1. 传输采用HTTP协议。
2. 使用POST方法将请求发送到接口地址,经服务端处理后,将请求结果返回。
3. 传输数据采用UTF-8编码。
4. 用POST方式提交参数,不要使用url参数,中文无需url编码。
# 调用凭证
申请开通接口权限后,由平台提供:
| 字段 | 字段值 | 字段描述 |
|-----------|-------|----------|
| base_url | 暂无 | 请求接口URL |
| app_id | 暂无 | 应用编号 |
| secret | 暂无 | 接口调用密钥 |
# 接口约定
每次请求需传入以下公共参数:
| 参数名称 | 参数类型 | 是否必须 | 参数描述 |
| --- | --- | --- | --- |
| app\_id | int | 是 | 账号编号,有平台提供 |
| timestamp | int | 是 | 当前时间戳(单位:秒) |
| sign | string | 是 | 签名 |
# 签名计算方式
为了防止请求被伪造、篡改,每一次接口请求都需传入sign(签名),sign根据本次请求参数与key(密钥)按顺序排列后进行md5计算获得。
sign生成规则:`md5( 参数1名称 + 参数1值 + 参数2名称 + 参数2值...+key)`
+表示字符串连接运算,参数按照参数名的字典升序排列,**md5加密后转为32位小写格式**。
举例:某接口传入参数为name、gender传入值分别为sun、1;那么sign值为:
7e5ed42c378bccb6b93d9729e1d4302b
~~~
app_id=1
key=12345678901234567890123456789012
~~~
~~~
md5(app_id1gender1namesuntimestamp172334447212345678901234567890123456789012)
~~~
**注意:接入接口时不要将key值通过网络明文传输,请妥善保管,以免泄漏造成损失。**
# API通用返回格式
~~~
{
code: 0,
message: "请求成功",
data: {
...
}
}
~~~
code为服务器处理结果状态码,0为成功,500为异常,其它为失败,可参考-状态码列表,data为与本次请求相关的业务数据