您好!欢迎来到爱源码

爱源码

热门搜索: 抖音快手短视频下载   

微信小程序开发订阅消息 {影视源码}

  • 时间:2022-06-24 00:17 编辑: 来源: 阅读:274
  • 扫一扫,手机访问
摘要:微信小程序开发订阅消息 {影视源码}
在微信小程序的开发中,我们可能经常会遇到这样的需求。客户进行某项操作后,需要在未来的某个时间给客户反馈通知,比如在少数餐厅点餐后发送的取餐提示,一些打卡应用的打卡提示等等。 这些都要在小程序之外给客户有效的通知,所以这个功能的实现方式只有一个——订阅消息。 订阅消息有两个主要步骤:订阅和发布。 首先,订阅小程序需要知道向谁发送消息,然后知道何时发送。 所以订阅是必要的操作,就像微信官方账号一样。想让微信官方账号每次发文章都能收到推送,就一定要关注微信官方账号。 但与微信官方账号不同的是,小程序只能实现一次性消息订阅而不能永久,也就是说,你订阅后,只需要发送消息,订阅就失效了。如果您想再次收到消息通知,您必须再次订阅。 订阅消息代码大致如下:wx . requestsubscribemessage({ tmplIds:[' '],//需要订阅成功的消息模板的id集合(res) {} //接口调用成功的回调函数})。那么从哪里可以得到tmplids数组中的消息模板ID呢?首先我们要自己添加配置消息模板,可以在【微信公众平台(http://MP . weixin . QQ . com)-功能-订阅消息】中配置。配置完消息模板后,我们可以获得它的模板ID。 关于订阅消息的更多详情,可以直接进入微信官方文档小程序(https://developers . weixin . QQ . com/mini program/dev/API/open-API/subscribe-message/wx . requestsubscribemessage . html) 第二,发布订阅消息后,小程序还需要根据相关信息(客户ID等)发布消息。)订阅时提供。 上面说的订阅操作是客户操作,表现在前台也就是小程序端,发布操作表现在后台也就是服务器端。这时候可以直接用云开发来实现。 1.定义云函数。我们可以定义一个发布消息的云函数。代码大致如下:const cloud = require(' Wx-server-SDK ')//Wx-server-SDK cloud . init({ env:cloud . dynamic _ current _ env//cloud environment ID })exports . main = async(event){ try { const result = await cloud . Open API . subscribe message . send({ touser:' OpenID ',//接收方(客户)的OpenID page):' pages/index/index ',//点击模板卡后的applet跳转到页面lang: 'zh_CN ',//语言类型 有几点可能需要注意:①上面的代码是云函数中的一个云调用。如果需要使用wx-server-sdk,可以通过NPM安装-保存WX-server-SDK @ latest安装。注意必须安装在当前云函数所在的文件目录下。 比如其中安装了wx-server-sdk。关于云调用的更多信息请参考→微信官方文档小程序(https://developers . weixin . QQ . com/miniprogram/dev/wx cloud/guide/Open API/Open API . html # % E4 % BA % 91% E8 % B0 % 83% E7 % 94% A8)②您需要在config.json中配置subscribeMessage.send API的权限{ " Permissions ":{ " Open API ":[" Template message . send "]} }当然还有config.json subscribeMessage.send API参数数据的具体配置。这是我最近开发的一个小程序使用的消息模板。以我开发的目标管理助手小程序为例。我在消息模板中使用了四个字段,分别是上图中的thing1、thing2、date3和thing4。所以对应的参数数据如下:cloud . open API . subscribe message . send({ data:{ thing 1:{ value:'上班一个月不要迟到' },thing2: {value:'你朋友已经确认见证' },Date:{ value:' 2020-01-17 12:30:00 ' },Thing4: {value:'请尽快解决' },//其余参数...});当然,上面的字段值文本只是一个例子,你可以根据需要自由填写。 2.调用云函数。定义了云函数之后,当然你要调用云函数,就像我们要执行一个函数才能生效一样。 调用云函数有两种方式:手动调用和自动调用。 ①手动调用手动调用,顾名思义就是要求客户手动触发云功能的执行。如果上面发送消息的云函数名为sendMessage,那么部署后我们可以在客户订阅消息成功后直接调用它:wx . requestsubscribemessage({ tmplIDs:[' '],//需要订阅的消息模板的id集合成功(res) {//接口成功调用回调函数wx.cloud.callFunction({ //调用云函数//云函数名:' sendMessage ',//参数数据传递给云函数:{ OpenID:' '//客户openid},成功:function (res) {console.log(...exports.main = async (event,context)= >;{ try { const result = await cloud . open API . subscribe message . send({ touser:event . OpenID,//接收方(客户)的OpenID)//其他参数...})返回结果} catch (err) {return err}}云函数接收两个参数:事件和上下文,调用云函数时传递的参数保存在事件对象中。 另外,事件对象还有一个userInfo属性,小程序的appId和客户的openId都存储在userInfo属性下。所以也可以通过event . userinfo . OpenID:const result = await cloud . open API . subscribe message . send({ touser:event . userinfo . OpenID,//接收方(客户)的OpenID)//其他参数直接获取客户的OpenID...}) ②自动调用自动调用,顾名思义,无需客户手动触发,由程序自动调用。这就需要使用云功能中的定时触发器,通过定时触发器可以在特定的周期内自动执行云功能。 a)在config.json中添加触发器字段{//触发器字段是一个触发器数组。目前只支持一个触发器,即数组只能填充一个,不能添加多个“触发器”:[{//name:触发器“名称”的名称:“myTrigger”,// type:触发器类型。目前只支持timer(即定时器触发器)“type”:“timer”和//config: trigger配置。在定时器触发下,配置格式为cron表达式“config”:“0 0 2 1 * * *”}]}此处,每月1日凌晨2点自动触发云功能,即发布订阅消息。 b)右键单击config.json并选择“上传触发器”。右键单击选择上传触发器。关于定时触发器的更多信息,请参考→官方微信文档和小程序(https://developers . weixin . QQ . com/mini program/dev/wx cloud/guide/functions/triggers . html)。亮点①微信小程序中的订阅消息只能订阅一次,且必须经过客户。②消息发布通过调用云函数实现,可以手动调用,也可以自动调用;③云功能和定时触发器都必须上传后才能使用。


  • 全部评论(0)
资讯详情页最新发布上方横幅

联系我们
Q Q:375457086
Q Q:526665408
电话:0755-84666665
微信:15999668636
联系客服
企业客服1 企业客服2 联系客服
86-755-84666665
手机版
手机版
扫一扫进手机版
返回顶部