腾讯的官方文档真的是不敢恭维,这当然不是我一个人的看法,在github上有很多调用微信接口的工具包。调用接口还需要工具包,足以说明调用微信接口真的很难。
最近小程序消息通知有所变动,咱也不赘述原因了。总之是之前的不能用,而且没有过渡期。
作为调用方,只能跟着修改。看了订阅消息的文档觉得比较简洁,可后来发现真的是简洁而不简单,简洁本身是好事,但是也得把事说清楚啊。好像是实习生做完在等老师批改。
先看官方文档的截图:
小程序开发
简单3步走。
先说第一步。可能有点苛刻,给了微信后台的地址,获取模版,在哪呢?对于新手来说真的是一头雾水。具体位置是:功能->订阅消息
看到官方示例代码
wx.requestSubscribeMessage({ tmplIds: [''], success (res) { }})毫不犹豫的就把这段代码写到了onLoad里,本想让用户进入小程序就弹出。
onLoad: function () { wx.requestSubscribeMessage({ tmplIds: [''], success (res) { console.log(res); } }) }但是却没有,报这个错:
requestSubscribeMessage:fail can only be invoked by user TAP gesture.最后官方在评论区给出的回答是,只支持用户点击或支付之后调用。就这么一句话,写在文档里不好吗?
其中object.success 回调函数返回的TEMPLATE_ID
{ "errMsg":"requestSubscribeMessage:ok", "zun-LzcQyW-edafCVvzPkK4de2Rllr1fFpw2A_x0oXE":"accept"}这个返回真的是很别扭。
好了,还是说正事吧。发送订阅消息需要注意的几个点
模版消息分为一次性订阅消息和长期订阅消息一次性订阅消息:用户自主订阅后,开发者可不限时间地下发一条对应的服务消息,订阅一次只能发一条,再次发送需要重新订阅。每条消息可单独订阅或退订。
长期订阅消息:用户订阅一次后,开发者可长期下发多条消息。但是长期消息目前仅向部分行业开放,比如政务民生、医疗、交通、金融、教育等线下公共服务。
模板消息一次最多订阅3条,一次性模板 id 和永久模板 id 不可同时使用。在弹出用户订阅界面中。当用户勾选了订阅面板中的“总是保持以上选择,不再询问”时,模板消息会被添加到用户的小程序设置页,通过 wx.getSetting 接口可获取用户对相关模板消息的订阅状态。
好歹最后还是完成了小程序的消息通知。
最后小程序的通知是发到了微信的「服务通知」里,调试通知消息要在真机上。
如果有其他问题在评论区交流,当然也可以一起吐槽小程序文档和本我。