Appearance
简介
- 当用户触发某些操作时,平台将POST消息的JSON数据包到开发者填写的URL上。
- 消息体采用加签的方式传达客户,签名算法采用md5。
- 平台在发送消息给客户后,
5s
秒内未得到正确响应,会在一段时间内进行重试。重试时间间隔为:1min/1min/1min/1hour/1hour/6hour/6hour。重试次数为7次。重试次数超过指定次数后消息会丢失 - 服务器接收到平台推送的消息后需在
5s
内作出回复,直接返回success
(往响应体写入success即可,没有双引号等其他字符) 即可。
消息签名
签名后的消息格式
{
"key":"40e68de77b88dxxx",
"timestamp":"169914977xxx",
"sign":"697a963c7768d9a5e3xxx",
"msg_id":"2177E51538CC0078F0Axxx",
"msg_type":"msg_type",
"event":"event",
"push_msg_url":"https://xx.nuoyun.tv/xx/xx",
"uid": "123xx",
"data":{
"xxx":"12801",
}
}
参数说明
默认情况,下面参数都推送
参数 | 必选 | 类型 | 描述 |
---|---|---|---|
key | 是 | string | AppKey |
timestamp | 是 | string | 13位时间戳 |
sign | 是 | string | 签名 |
msg_id | 是 | string | 消息id |
msg_type | 是 | string | 消息类型:event-事件 |
event | 是 | string | 事件类型 |
push_msg_url | 是 | string | 推送地址 |
uid | 是 | string | 商户ID |
data | 是 | object | 消息内容 |
签名校验
- 通过post数据包拿到 key、timestamp、sign
- 根据demo、secret计算得到sign
- 对比计算得到的sign与数据包的sign
demo
key = 'key';
secret = 'secret';
timestamp = 1699149777000;
sign = md5('1699149777000keysecret')