日日顺物流订单交互接入规范白皮书
为了方便客户能快速了解日日顺物流的业务、作业流程,对接日日顺物流,加入日日顺物流体系,从而为客户提供更好的服务,我们推出了日日顺物流订单交互接入规范白皮书。
本文档的目标读者为有意向接入日日顺物流的客户。
VOM:日日顺物流订单管理系统
B2C:Business to Customer
CUSTOM:日日顺物流客户
TMS:Transportation Management System物流管理系统
VOM与外部系统通过HTTP POST方式进行通讯。
l 被动模式
被动模式是客户系统下发消息,VOM接收到以后验证数据有效性返回T或者F。
l 主动模式
主动模式是VOM下发消息,客户系统接收到以后验证数据有效性返回T或者F。
被动接口
测试地址:
http://58.56.128.84:9001/EAI/service/VOM/CommonGetWayToVOM/CommonGetWayToVOM
生产地址:
http://58.56.128.10:19001/EAI/RoutingProxyService/EAI_REST_POST_ServiceRoot?INT_CODE=EAI_INT_1353
主动接口
测试地址:
http://10.135.1.198:7001/EAI/service/LES/TransInfoFromLESToWeb/TransInfoFromLESToWeb?wsdl
生产地址:
http://10.135.1.110:7001/EAI/RoutingProxyService/EAI_SOAP_ServiceRoot?INT_CODE=EAI_INT_0248
3.2.2 基本约定
1) 通讯约定:使用HTTP POST方式进行通讯,参数做encode(URL转码)。
2) 参数大小写约定:没有强制要求的地方,统一使用小写。
3) 编码约定: UTF-8。
4) 参数约定:支持JSON或XML,默认入驻时提交的设置。
5) 签名约定:对通讯的业务参数(content,下文会提到)进行校验,签名生成公式:base64(MD5(content+keyValue)),keyValue由VOM在发布服务时指定。
6) 消息去重约定:在主动模式下,外部系统通过下发字段中的notifyid(下文会提到)去重,VOM若收到重复的notifyid,可以认为该消息是重复下发。同样,被动模式下VOM通过回传唯一的outcode(下文会提到)去重。
7) 时间约定:时间格式使用 YYYY-MM-DD HH:mm:ss 的格式,精确到秒。
8) Content-Type约定:普通接口:text/html; charset=utf-8
9) 字段类型约定:需要严格依据字段表格中给出的参数格式和大小进行开发,避免类型不匹配或参数大小预留不够导致溢出。
10) 字段解析约定:参数字段中的必选字段是每次调用接口时都要求必须传入的。而可选字段会根据业务场景需求有差别(在某些特殊业务场景下,可选也有可能是必选)。所以仓库需根据实际业务场景,支持解析可选字段。在开发时,不应该认为可选字段,就不预留或不处理。
content 加密协议:AES加密协议
模式字段键值对用&符号链接
外部系统下发消息字段:
|
接口类名 |
消息请求格式 |
||
|
名称 |
类型 |
可选/必选 |
备注 |
|
notifyid |
String(32) |
必选 |
消息ID,消息唯一码,不能重复。 |
|
notifytime |
Date |
必选 |
消息通知时间 YYYY-MM-DD hh:mm:ss |
|
butype |
String(32) |
必选 |
通知类型,接口方法名 |
|
source |
String(32) |
必选 |
来源,根据系统区分 |
|
type |
String(16) |
必选 |
报文格式: Json或xml |
|
sign |
String(64) |
必选 |
签名 |
|
content |
String |
必选 |
消息内容根据具体业务定义,加密后的报文需 URLEncoder |
|
接口类名 |
消息响应格式 |
||
|
名称 |
类型 |
可选/必选 |
备注 |
|
flag |
String |
必选 |
T 成功 F 失败 |
|
业务参数 |
|
||
|
response |
String |
可选 |
根据业务数据定义 |
|
msg |
String |
可选 |
处理描述 |
VOM系统下发消息字段:
|
接口类名 |
消息请求格式 |
||
|
名称 |
类型 |
可选/必选 |
备注 |
|
outcode |
String(32) |
必选 |
消息code,消息唯一码,不能重复。 |
|
notifytime |
Date |
必选 |
消息通知时间 YYYY-MM-DD hh:mm:ss |
|
butype |
String(32) |
必选 |
通知类型,接口方法名 |
|
source |
String(32) |
必选 |
来源,根据系统区分 |
|
type |
String(16) |
必选 |
报文格式: Json或xml |
|
sign |
String(64) |
必选 |
签名 |
|
content |
String |
必选 |
消息内容根据具体业务定义,加密后的报文需 URLEncoder |
|
接口类名 |
消息响应格式 |
||
|
名称 |
类型 |
可选/必选 |
备注 |
|
flag |
String |
必选 |
T 成功 F 失败 |
|
业务参数 |
|
||
|
response |
String |
可选 |
根据业务数据定义 |
|
msg |
String |
可选 |
处理描述 |