消息对接文档
**消息推送服务接入指南:**
为提高开发者API接口调用效率,增强数据通信的实时性,米合开放平台提供主动推送消息服务。基于消息推送服务,只要相关事件发生,就会把对应的消息实时推送到开发者配置的推送地址。开发者无需通过轮询API来获取相关数据,仅需在接收到消息后解析即可。使用该种数据对接方式可以大大提高API调用效率,减少双方计算资源的浪费。
**一、通知方式**

1.推送地址是开发者用来接收消息的地址,目前仅支持配置一个地址
2.用户提供调用地址,地址需公网可访问。
**二、接收消息**
1.消息推送服务通过POST、参数编码为APPLICATION/JSON(输入流)的方式向开发者提供的地址推送消息。由于平台服务端响应超时时间为2s,建议开发者接收到消息后立即返回成功code,再异步去处理自有的业务信息
2.开发者接收到消息后必须返回 {"code":0,"message":"成功"} 通知米合开放平台成功接收,否则会被判定为推送失败,系统会自动进行消息重推。最多重推3次,推送的时间间隔5min。
**三、消息体示例**
```json
{
"clientId": "xxx",
"sign": "DJALFK3J55LJAL6L6LJDAFJL",
"data": [
{
"companyCode": "xxx",
"messageId": "dsafa453das453f3da4s3f4das3f54d63asf4da3",
"messageTag": "orderxxxx",
"orderCode": "xxx",
"sourceOrderCode": "xxx",
"timestamp": 1545434343434
},
{
"companyCode": "xxx",
"messageId": "dsafa453das453f3da4s3f4das3f54d63asf4da4",
"messageTag": "orderxxxx",
"orderCode": "xxx",
"sourceOrderCode": "xxx",
"timestamp": 1545434343435
}
]
}
```
1.目前支持的消息参见api文档:https://easydoc.net/doc/21494789/hA8cof1w/111EXhE1
2.为防止请求被拦截后,参数被恶意篡改,数据根据开发者对接文档的规则进行加签。开发者需要校验clientId是否为自己持有,并校验签名正确后方可使用数据。