赞
踩
首先说一下小程序:小程序现在都是订阅消息了,小程序模板消息接口已经被废弃。其中订阅消息分为两种。
第一种:一次性订阅消息。官方解析为:
一次性订阅消息用于解决用户使用小程序后,后续服务环节的通知问题。用户自主订阅后,开发者可不限时间地下发。
一条对应的服务消息;每条消息可单独订阅或退订。
需要注意的是:一次单独的订阅,只能接收一次消息下发!
第二种:长期订阅消息。官方解释为:
一次性订阅消息可满足小程序的大部分服务场景需求,但线下公共服务领域存在一次性订阅无法满足的场景,如航班延误,需根据航班实时动态来多次发送消息提醒。为便于服务,我们提供了长期性订阅消息,用户订阅一次后,开发者可长期下发多条消息。
目前长期性订阅消息仅向政务民生、医疗、交通、金融、教育等线下公共服务开放,后期将逐步支持到其他线下公共服务业务。
微信文档链接:
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.html
这个需要注意的是:目前很多企业没有这个资质去使用长期订阅!至于你的企业有没有这个资质,可以自己查询一下。
再说一下公众号:公众号有模板消息也有一次性订阅消息,我使用的是模板消息。模板消息官方给出的描述为:
模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等。不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息。
微信文档链接:
https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Template_Message_Interface.html#5
小程序我用的是一次性订阅消息,下面就说明一下小程序一次性订阅和公众号模板消息。仅供参考,不保证百分之百正确哦。
首先第一步:获取模板
这个模板,需要登录小程序管理后台,先打开消息权限(这步很重要,不然你都是用不了),然后点击订阅消息。一开始进去,我的模板里面是没有的。
点到公共模板库里面,里面是有很多别的企业申请的模板,如果看到有合适的,可以直接添加,但是基本上百分之九十都不太合适,这个时候就需要自己申请一个新模板了。
点到最后一页,然后点 帮我们完善模板库。别问为什么要到最后一页,去就行了!
接下来就是一个模板内容的填写了。注意内容是什么就选什么参数类型,这个之后代码会用到。一般头几次申请多多少少都有问题,审核不通过,然后根据不通过的内容改改就行了,多来几次,也就过了。但是有时候审核速度非常慢,建议早点开始申请。
申请通过后,再去我的模板那添加,选中公共模板库里面你申请通过的那个模板就行了。
添加成功后,记得看看详情,里面的东西会用到!
模板id和内容的参数类型推送代码都会用到。到这,推送的消息模板就有了。公众号的添加消息模板步骤和小程序的差不多,就不再说了。
下面开始消息推送。
调用微信的接口,access_token肯定是需要的。拿access_token可以参考一下官方:
获取access_token官方链接:
https://developers.weixin.qq.com/miniprogram/dev/framework/server-ability/backend-api.html
这里主要说消息推送,获取access_token就不详细说了。
订阅消息的发送也可以直接看一下官方的连接:
发送订阅消息官方链接:
https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/subscribe-message/subscribeMessage.send.html
当然,也可以看看我下面写的,我肯定是没有意见的。
我使用的是https调用。首先看一下接口的地址:
POST https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN
再看看必传字段:
access_token作为访问秘钥肯定是必传的;touser谁来接收这个消息,也是必传的,而且必须是用户在此小程序的openid;template_id消息模板的id,比传的,就是上面模板让你看详情里面的那个模板ID;然后data内容,也是必传的,内容就是对模板消息内容的填充(具具体如何填充后面说)。
剩下的都是非必填的字段了,其中page还是重要一点的。如果你的推送消息需要跳转到小程序,这个是需要传的,需要注意的是:里面的内容,你需要把参数都拼接好,免得跳转进去请求接口没有数据。至于miniprogram_state和lang参数,看自己喜欢咯。
然后我们再看看返回的数据:
嗯,就是一个微信的正常接口返回数据。根据errcode可以判断是否执行成功,一般0是成功。其他错误码代表的意思可以再官方查阅。注意定义errcode不要定义为包装类型哦,因为有时候成功了,微信那边errcode会返回null。
说一下公众号的接口和这个的差异:
公众号模板推送接口
POST https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
说一下参数:touser、template_id、data和小程序一致,都是必传,然后data结构稍微有点不同。由于公众号跳转是跳转小程序,所以需要指明是哪个小程序,所以需要传miniprogram对象。miniprogram对象中appid为跳转小程序的appid,必传,pagepath为跳转小程序的页面,跟小程序的一样,参数都需要拼接好。
好了,接口说完了,说一下具体的设计和调用。
菜鸟设计,不喜勿碰哦。
首先小程序的access_token缓存到redis。
好了,元旦了,剩下的下次在写吧。
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。