前言

公司要做一款新的微信小程序,因为业务需求要加入消息推送。因为之前APP是通过服务号推送给用户消息的,所以微信小程序要做消息推送也是首先想到了通过服务号推送。事实上在使用过程中服务号推送还是非常好用的,简洁又大方,用户接受度高。

逻辑选型

通过百度大法了解到了一些情况,微信小程序通过服务号是需要服务号先授权获取到openid才能推送,针对授权方式了解到了两种不同的方法
方法一
把微信小程序和微信服务号绑定都绑定在微信开放平台上(需要主体相同),在小程序登录时获取用户信息就可以获取微信用户双平台唯一id——unionid
这个方法应该是微信官方比较推荐的,条例清晰,比较容易理解。但是使用这个方法有一个问题需要用到服务器配置,一旦启用服务器配置就不能用微信公众号平台提供的自定义菜单,就很烦。官方文档链接。

方法二
微信小程序使用web-view加载web网页使用js的方式调起授权再返回到小程序。听起来有点绕操作起来可行性还是比较高的。服务号授权是可以通过网页js的方式来调起的。附上官方文档链接。

开始动手

配置阶段
考虑到公司后续可能会用服务号做自定义菜单导航,所以我选用了第二种方法。使用微信服务号推送需要在微信开放平台上做很多配置,我尽量一一都讲清楚。首先微信服务号的配置如下图所示:

模板消息是需要申请的 可以提前申请一下。

注意,小程序也要配置一下。


这是配置在小程序中允许加载的域名,目前支持配置https域名。

代码阶段
小程序端直接新建一个页面,里面只有一个web-view包含着授权的url,其中state是可以自定义的参数,可以带一些必要的参数传过去。

 <web-view src="https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxc4c9d383cedd4e81&redirect_uri=https://sdcminiprogramsever.1cno.com/wechat/authorization/view&response_type=code&scope=snsapi_userinfo&state={{state}}"></web-view>

sever端需要一个跳转到小程序的页面,我也是为了省事直接用了spring boot的template做了一个跳转的页面。代码如下:

此处是从web-view跳转到小程序中,需要注意两点:1.需要引入微信的JSSDK,附上链接。
2.跳转回小程序页时在网上看了很多都是使用的redirectTo在url上带着授权后的openid回到小程序的,但是我跳转的小程序页面包含tabBar的,故只能使用switchTab方法跳转(此处调试了很久,- . -!)。
由于switchTab的url无法携带参数我就直接把小程序openid和服务号openid的绑定部分直接放到了授权这里。代码如下:

剩下的就只是发送模板消息了,比较简单,官方文档也很清楚,后面贴上文档链接大家可以直接去看,我就写了。链接附上。

完结

希望文章能够帮助到大家,二牛与大家共同进步!

微信小程序通过服务号推送模板消息相关推荐

  1. 微信小程序云开发定时推送订阅消息

    微信小程序云开发定时推送订阅消息 1.找到自己想要的模板 (1)点击订阅消息 (2)点击公共模板库,然后找到想要选用的模板,点击选用. (3)在我的模板里面,复制模板id. 如果找不到想要用的模板,可 ...

  2. uniApp 微信小程序 授权 公众号推送信息

    准本工作 1.首先小程序  更公众号关联起来 2.配置相应的域名(也就是你请求后端接口的公共地址) 3.需要写一个h5 页面 用于跳板 公众号 的授权 公众号如何关联小程序? 打开微信公众号后台,选择 ...

  3. 微信小程序向公众号推送消息超详细教程

    官方教程 官方教程 开通一下服务号公众号 超级管理员登录服务号公众号后台 登录地址 开通模板消息 申请一个模板消息,获取模板ID 注意此处的参数,后续接口需要使用 绑定公众号与小程序 官方教程 1.登 ...

  4. 教你设置微信小程序的服务通知推送!搜狗文章

    场景碎碎念:嗨喽,小伙伴闷,今天的学习到咯.通过咱们快一个月的学习,已经把平台的组件学习的差不多了,当然咱闷这个功能组件是在不停更新.不断完善的.今天咱们来学下"模板消息"推送功能 ...

  5. 小程序消息主动推送php,微信小程序有几种推送消息的方式

    微信小程序有5种推送消息的方式,分别为:1.小票机订单提醒,实现对商家的消息提醒:2.短信提醒:3.模板消息,各种动态可及时掌握:4.公众号订单提醒:5.消息主动推送,商家主动出击.推销自己的最好手段 ...

  6. 公众号推送模板消息(JAVA版)

    公众号推送模板消息(JAVA版) 先贴上官方文档 步骤不多:组装请求体,调用接口 接口:(POST)https://api.weixin.qq.com/cgi-bin/message/template ...

  7. 小程序关联公众号推送公众号消息

    最近项目有个需求要把小程序和公众号关联到一起,发布商品,下单的时候的时候给用户推送消息 小程序要跟微信公众号(服务号认证300块,订阅号不行)绑定到一起,要先绑定到微信开放平台(需要认证300块) 绑 ...

  8. 关于微信小程序uniapp版的推送消息

    1.按钮触发推送消息 <button type="primary" size="mini" @tap="pushMesage"> ...

  9. 微信公众号推送模板消息工具类

    微信公众平台: 开通 模板消息功能 : 添加消息模板: 将模板id复制作为后台参数: 后台(java): 使用时直接调用WechatModelMessage.sendWechatmsgToUser() ...

最新文章

  1. 100万奖金池,这不仅仅是场比赛
  2. 微软称使用 Edge 而非 Chrome 能提升电池续航
  3. 交叉表 列字段排序_PowerBI创建日期表
  4. mysql5.6数据库位置_MYSQL5.6数据库存放位置
  5. python读写xlsx文件_python读写Excel文件--使用xlrd模块读取,xlwt模块写入
  6. BestCoder Round #91 1001 Lotus and Characters
  7. JavaScript人脸检测的实现方法
  8. Vue:中向对象中添加数据
  9. java姓名转拼音加处理多音字
  10. windows 清理助手 3.1
  11. 2023杭州电子科技大学考研分析
  12. 数据库的ACID是什么
  13. 块数据3.0:秩序互联网与主权区块链
  14. Android P应用显示宽高比maxAspectRatio使用及原理
  15. Jenkins与DevOps持续交付详解
  16. visio取消英文首字母大写
  17. 泰勒公式求解极限(泰勒展不开)
  18. 苦涩又难理解的IO<2>
  19. 文件夹文件自动生成目录的方法-保存到txt
  20. python一只青蛙一次可以_python算法题 python123网站单元四题目

热门文章

  1. 2022年毕业生求职找工作青睐哪个行业?
  2. python熊猫图案_熊猫Python数据分析库和SQL教会了我如何取平均数
  3. Modern love 年度最暖心美剧
  4. oracle与sql语句
  5. 老司机带你从源码开始撸Spring生命周期!!!
  6. android内存显示修改,涨姿势:修改这个系统选项Android手机再也不用清内存!速度飞起...
  7. html-css-边框样式
  8. 《管理长歌行》——乌龟的另一种能力
  9. 统计字符号串“aaaabbbccccddfggh”中字母个数或统计最多字母数;
  10. explain用法和结果的含义