简介
数字产品销售系统开放平台(Digital Products E-Sales Open Platform)是基于数字产品各类电商业务的开放平台,为平台客户提供各类API服务,例如下单购买、订单处理、商品数据等。本文档说明了开放平台的技术规范、传输协议等信息,供接入平台的商家使用,作为程序设计开发的指导。
协议架构
- 传输采用HTTP协议。
- 商家使用POST方法将请求发送到接口地址,经服务端处理后,将请求结果返回。
- 传输数据采用UTF-8编码。
- 用POST方式提交参数,不要使用url参数,中文无需url编码。
接口地址
接口请求地址为(http|https)://[域名]/api/gateway
接口约定
每次请求需传入以下公共参数:
| 参数名称 | 参数类型 | 是否必须 | 参数描述 |
|---|---|---|---|
| method | string | 是 | API接口方法,如 esales.product.get |
| customer_id | int | 是 | 商家编号 |
| timestamp | int | 是 | 当前时间戳(单位:秒) |
| sign | string | 是 | 签名 |
签名计算方式
为了防止请求被伪造、篡改,每一次接口请求都需传入sign(签名),sign根据本次请求参数与key(密钥)按顺序排列后进行md5计算获得。
sign生成规则: md5(key + 参数1名称 + 参数1值 + 参数2名称 + 参数2值...)
+表示字符串连接运算,参数按照参数名的字典升序排列,md5加密后转为32位小写格式。
举例:某接口传入参数为a、z、b,传入值分别为1、2、3,那么sign值为:
// 实际使用时需将{key},{customer_id}等替换为具体值。
md5({key}a1b3customer_id{customer_id}method{method}timestamp{timestamp}z2)
1
2
2
注意:接入接口时不要将key值通过网络明文传输,请妥善保管,以免泄漏造成损失。
API通用返回格式
{
code: 0,
message: "请求成功",
data: {
...
}
}
1
2
3
4
5
6
7
2
3
4
5
6
7
code为服务器处理结果状态码,0为成功,500为异常,其它为失败,可参考状态码列表,data为与本次请求相关的业务数据。