当前位置:网站首页>实现微信公众号H5消息推送的超级详细步骤
实现微信公众号H5消息推送的超级详细步骤
2022-07-06 09:10:00 【Eric-x】
前言
前段时间在项目中做了一个给H5消息推送的功能,特此记录一下,感兴趣或者有需要的小伙伴可以查阅一下,因为其实代码并不难,我觉得对于初学者来说难的是一些概念和具体实现的过程,所以我会先使用微信提供的测试接口先走一遍流程,在后面再将对应的实现代码贴出来,这样不管是我还是你对整体流程的实现也会有一个更清楚的认识,如果有哪些不对还望指出(抱拳感谢)
效果图如下:
文章标题
1、概念
我觉得对接第三方接口之前一定要先明白文档中一些关键词的概念,所代表的的含义,这样才不至于看文档迷糊了(其实我在做的时候看第三方接口文档也很迷糊,特别是微信的,这里吐槽一下,还是阿里的文档好,通俗易懂)
在这里就不多说,简单介绍一下我们这个功能中用到了几个概念:微信服务号官方文档链接
咋们这里尽量只说重点,其他就不多说
1、Access token
access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。
这句话是官方说的,其实我们可以理解为:token就是服务号的身份证,具有唯一性,并且这个凭据是需要我们服务号的APPID和secret这两个值来获取的。其实还有一个值,grant_type,关于这个值这里不多说,网上有很多介绍,获取access_token填写client_credential即可。
2、APPID
第三方用户唯一凭证,我们只要开通了服务号就会有这玩意
3、secret
第三方用户唯一凭证密钥,即appsecret
官方介绍如下:
APPID和secret在我们注册服务号的时候就可以获取到,那么有了这两个值,我们就可以通过这两个值去请求官方给定的链接来获取我们的token
2、获取Token
对于学习者来说,申请服务号还是很费劲的,所以,微信官方很贴心的给我们准备测试的接口:微信开发测试接口、进去这个链接,拿微信扫码登录,就可以获得:APPID和appsecret了
然后我们可以通过微信提供的 测试接口,将我们的APPID和APPsecret填进去,就能获取到我们的token了,token有效期默认是两个小时,如下
3、添加消息模板
上面我们已经走通了第一步,那么这是不够的,如果需要给关注我们服务号(公众号)的用户发送消息,我们是需要一个消息模板的,模板在这里添加
这里为了照顾初学者,我把我的测试模板内容放在这里供大家直接复制
{
{
first.DATA}}
通知内容:{
{
keyword1.DATA}}
{
{
remark.DATA}}
4、获取用户的openId
关于openId,这里特别说明一下,openId是针对于用户的,跟我们服务号的APPID是没有任何关系的哈(关于这个我在刚开始就混淆了),我们的微信只要关注了一个公众号,那么这个公众号就给我们的微信分配一个openId,也是唯一的,这里需要注意的,即使我们取消关注,第二次关注那么openid还是之前的,是不会变化的。
因为我们是给指定用户进行通知,那么我们就需要获取该用户的openId
5、测试
好,现在我们万事具备,可以直接进行测试了,依旧,打开我们的 微信调试工具
1、先获取我们的token,输入APPID和秘钥,直接点击获取,然后会自动生成Token,我们直接复制保留
2、悬着向用户发送详细,然后拿token和消息内容即可
上面就是大概流程和思路了,知道了具体的实现流程,那么代码也就不难写了,关于对应的代码下次再写
边栏推荐
- 软件测试工程师必备之软技能:结构化思维
- Sichuan cloud education and double teacher model
- CAPL脚本中关于相对路径/绝对路径操作的几个傻傻分不清的内置函数
- Hugo blog graphical writing tool -- QT practice
- The 32 year old programmer left and was admitted by pinduoduo and foreign enterprises. After drying out his annual salary, he sighed: it's hard to choose
- Why is 51+ assembly in college SCM class? Why not come directly to STM32
- C杂讲 文件 续讲
- 51单片机进修的一些感悟
- Vh6501 Learning Series
- 16 医疗挂号系统_【预约下单】
猜你喜欢
If someone asks you about the consistency of database cache, send this article directly to him
Which is the better prospect for mechanical engineer or Electrical Engineer?
CAPL 脚本打印函数 write ,writeEx ,writeLineEx ,writeToLog ,writeToLogEx ,writeDbgLevel 你真的分的清楚什么情况下用哪个吗?
软件测试工程师必备之软技能:结构化思维
jar运行报错no main manifest attribute
History of object recognition
CANoe下载地址以及CAN Demo 16的下载与激活,并附录所有CANoe软件版本
Redis distributed lock implementation redison 15 questions
Combined search /dfs solution - leetcode daily question - number of 1020 enclaves
Some thoughts on the study of 51 single chip microcomputer
随机推荐
Compress decompress
Notes of Dr. Carolyn ROS é's social networking speech
The 32-year-old fitness coach turned to a programmer and got an offer of 760000 a year. The experience of this older coder caused heated discussion
Hugo blog graphical writing tool -- QT practice
Regular expressions are actually very simple
MySQL ERROR 1040: Too many connections
Download address of canoe, download and activation of can demo 16, and appendix of all canoe software versions
Teach you how to write the first MCU program hand in hand
Keep these four requirements in mind when learning single chip microcomputer with zero foundation and avoid detours
嵌入式开发比单片机要难很多?谈谈单片机和嵌入式开发设计经历
如何让shell脚本变成可执行文件
Tianmu MVC audit I
简单解决phpjm加密问题 免费phpjm解密工具
51单片机进修的一些感悟
零基础学习单片机切记这四点要求,少走弯路
Elk project monitoring platform deployment + deployment of detailed use (II)
Selection of software load balancing and hardware load balancing
Upload vulnerability
15 医疗挂号系统_【预约挂号】
VH6501学习系列文章