原文连接:https://dsx2016.com/?p=1112javascript
公众号:大师兄2016html
选择模板
在微信后台选择对应的消息模板java
小程序点击订阅
参考文档地址python
在页面设置按钮,只有当用户点击,才会弹框提醒,且容许后生效.flask
点击一次,可发送一次订阅消息小程序
订阅消息
官方文档地址api
订阅消息API
参数微信
注意data
里面的data
参数名和上述的模板消息字段匹配,如thing1,thing2
data = { # 用户的openId "touser": 'ok2Q65Fte6lDt7ELrXYQ-JQIx2l8', # 订阅消息模板id "template_id": "KDyVpbwZxn09Jm9LVGrhTTSEnHceEBKI3cRFIU-Z-fE", # 要跳转的页面 "page": "pages/mine/index", # 模板消息对应的内容设置 "data": { "thing1": { "value": "您的xx服务已到期" }, "thing2": { "value": "剩余2天时间" }, "thing3": { "value": "请尽快充值续期" }, "thing4": { "value": "巴拉巴拉" } } }
服务端post
请求
此处使用项目为python flask
服务端token参考地址(后台接口调用凭据,全局惟一)
https://developers.weixin.qq.com/miniprogram/dev/framework/server-ability/backend-api.html
# 服务端token serverToken = '33_0YjkW9kCMa-0N10emqbOcEzI4G9VCWT_r9E8cU0JfKdtu8EpgAnyGe62DQix7CKvHLtyzBY3eUV1ZSMj2RyzvaPIDuckkozn_MHLahXW11pl3PvVdxxdbVgWY4If78UjYeEOUr0ZW49gUsI3RSGhAAAUVJ' # 要请求的微信API url = 'https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token={serverToken}'.format(serverToken = serverToken) # 数据格式化(从这里开始对上面的data进行格式化,转成符合post的json参数形式) data = json.dumps(data) # 数据格式化 data = bytes(data, 'utf8') # 数据格式化 request = urllib.request.Request(url) # post服务器请求 result = urllib.request.urlopen(request, data).read() # 打印结果 print(result)
推送效果
当服务端发起微信订阅API
时,对应openid
的用户就会收到指定的订阅消息
效果如图
END.