API消息推送

360小程序支持通过调用api向指定的用户推送消息,接入方法如下:

注:开发者不能滥用push能力向用户推送违规、骚扰信息,一经发现,360 将对小程序开发者进行封禁处理。

接入要求

开发者需要使用appId和appSecret对消息签名。未开通接口权限时,需先申请开通api消息接口权限。立即开通

消息格式

请求路径:https://mp.360.cn/miniplatform/open/api/msg

请求头部

头部中文名参数类型必填备注
X-API-KEYappid字符串如:qhje3zmxsmwm8112b6
X-API-TS时间戳字符串如:1566470506
X-API-SIGN签名值字符串参考下面签名方式

请求参数

POST消息体为JSON结构,字段如下:

参数名类型必填说明
msg_idstring消息ID,作为消息的标识符,长度20个alphanum 字符以内,有发送者自主生成,同一个appId下msg_id不能重复
uidstring需要推送消息的用户ID,多个用户ID以逗号分隔。开发者使用qh.getM2()获取用户UID
titlestring消息标题,长度15个字符以内
digeststring消息摘要,长度50个字符以内
click_urlstring点击跳转链接,只支持小程序内部链接

代码实例

  1. {
  2. "msg_id":"2019010112319999",
  3. "uid":"aaa,bbb,ccc,ddd",
  4. "title":"欢迎登录xxx",
  5. "digest":"hello xxx, welcome to my world!",
  6. "click_url":"index.html",
  7. }

签名方式

各个字段按照字典序排序,值做base64处理, 使用&连接,最后加上key=<appid>&secret=<app_secret>&ts=<unix_timestamp>,将字符串做MD5的结果就是sign。

例如

appId=qhzdhs1y8jypm3pefb, appSecret=tchvzxx9mqxkqn1fc78383mwnq34sqae, 当前时间戳为1557460800 (单位秒, 时区为北京时间) 针对示例的json,拼接后的字符串如下:

  1. click_url=aHR0cHM6Ly93d3cueHh4LmNuL2FhYQ==&digest=aGVsbG8geHh4LCB3ZWxjb21lIHRvIG15IHdvcmxkIQ==&msg_id=MjAxOTAxMDExMjMxOTk5OQ==&title=5qyi6L+O55m75b2VeHh4&uid=YWFhLGJiYixjY2MsZGRk&key=qhzdhs1y8jypm3pefb&secret=tchvzxx9mqxkqn1fc78383mwnq34sqae&ts=1557460800

计算MD5后的签名值为

  1. 57ad8c210dc748338ab9c160e1840509

注:360 将会对违规使用消息 api 的开发者进行封禁处理。 API消息推送 - 图1

API消息推送 - 图2