API消息推送
360小程序支持通过调用api向指定的用户推送消息,接入方法如下:
注:开发者不能滥用push能力向用户推送违规、骚扰信息,一经发现,360 将对小程序开发者进行封禁处理。
接入要求
开发者需要使用appId和appSecret对消息签名。未开通接口权限时,需先申请开通api消息接口权限。立即开通
消息格式
请求路径:https://mp.360.cn/miniplatform/open/api/msg
请求头部
头部 | 中文名 | 参数类型 | 必填 | 备注 | |
---|---|---|---|---|---|
X-API-KEY | appid | 字符串 | 是 | 如:qhje3zmxsmwm8112b6 | |
X-API-TS | 时间戳 | 字符串 | 是 | 如:1566470506 | |
X-API-SIGN | 签名值 | 字符串 | 是 | 参考下面签名方式 |
请求参数
POST消息体为JSON结构,字段如下:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
msg_id | string | 是 | 消息ID,作为消息的标识符,长度20个alphanum 字符以内,有发送者自主生成,同一个appId下msg_id不能重复 |
uid | string | 是 | 需要推送消息的用户ID,多个用户ID以逗号分隔。开发者使用qh.getM2()获取用户UID |
title | string | 是 | 消息标题,长度15个字符以内 |
digest | string | 是 | 消息摘要,长度50个字符以内 |
click_url | string | 是 | 点击跳转链接,只支持小程序内部链接 |
代码实例
{
"msg_id":"2019010112319999",
"uid":"aaa,bbb,ccc,ddd",
"title":"欢迎登录xxx",
"digest":"hello xxx, welcome to my world!",
"click_url":"index.html",
}
签名方式
各个字段按照字典序排序,值做base64处理, 使用&连接,最后加上key=<appid>&secret=<app_secret>&ts=<unix_timestamp>,将字符串做MD5的结果就是sign。
例如
appId=qhzdhs1y8jypm3pefb, appSecret=tchvzxx9mqxkqn1fc78383mwnq34sqae, 当前时间戳为1557460800 (单位秒, 时区为北京时间) 针对示例的json,拼接后的字符串如下:
click_url=aHR0cHM6Ly93d3cueHh4LmNuL2FhYQ==&digest=aGVsbG8geHh4LCB3ZWxjb21lIHRvIG15IHdvcmxkIQ==&msg_id=MjAxOTAxMDExMjMxOTk5OQ==&title=5qyi6L+O55m75b2VeHh4&uid=YWFhLGJiYixjY2MsZGRk&key=qhzdhs1y8jypm3pefb&secret=tchvzxx9mqxkqn1fc78383mwnq34sqae&ts=1557460800
计算MD5后的签名值为
57ad8c210dc748338ab9c160e1840509
注:360 将会对违规使用消息 api 的开发者进行封禁处理。