codecamp

360小程序 消息API

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

注:为了保护小程序用户的隐私,开发者必须校验小程序用户的登录状态,在登录状态的用户才可推送消息,否则 360 则对小程序开发者进行封禁处理。

接入要求


开发者需要使用appId和appSecret对消息签名

消息格式


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

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

参数名 类型 必填 说明
msg_id string 消息ID,作为消息的标识符,长度20个字符以内
uid string 需要推送消息的用户ID,多个用户ID以逗号分隔。开发者使用qihoo.GetMid()获取用户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":"https://www.xxx.cn/aaa", 
}

签名方式

各个字段按照字典序排序,值做base64处理, 使用&连接,最后加上key=&secret=&ts=<unix_timestamp>,将字符串做MD5的结果就是sign, 将认证字段放到http header中,X-API-KEY填写appId, X-API-TS填写当前unix timestamp格式的时间戳(秒),X-API-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 的开发者进行封禁处理。 


360小程序 消息Push模板
360小程序 创建快捷方式
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

360小程序 设计指南

360小程序 运营规范

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }