当前位置:网站首页>实现微信公众号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和消息内容即可
上面就是大概流程和思路了,知道了具体的实现流程,那么代码也就不难写了,关于对应的代码下次再写
边栏推荐
- 华南技术栈CNN+Bilstm+Attention
- CANoe的数据回放(Replay Block),还是要结合CAPL脚本才能说的明白
- 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
- 大学想要选择学习自动化专业,可以看什么书去提前了解?
- cmooc互联网+教育
- flask运维脚本(长时间运行)
- 14 医疗挂号系统_【阿里云OSS、用户认证与就诊人】
- CAPL 脚本打印函数 write ,writeEx ,writeLineEx ,writeToLog ,writeToLogEx ,writeDbgLevel 你真的分的清楚什么情况下用哪个吗?
- 17 medical registration system_ [wechat Payment]
- CANoe下载地址以及CAN Demo 16的下载与激活,并附录所有CANoe软件版本
猜你喜欢

Why can't TN-C use 2p circuit breaker?

大学想要选择学习自动化专业,可以看什么书去提前了解?

Automation sequences of canoe simulation functions

I2C summary (single host and multi host)

Counter attack of noodles: redis asked 52 questions in a series, with detailed pictures and pictures. Now the interview is stable

If someone asks you about the consistency of database cache, send this article directly to him

15 医疗挂号系统_【预约挂号】

Jar runs with error no main manifest attribute

History of object recognition

Nc29 search in two-dimensional array
随机推荐
单片机实现模块化编程:思维+实例+系统教程(实用程度令人发指)
MySQL实战优化高手05 生产经验:真实生产环境下的数据库机器配置如何规划?
寶塔的安裝和flask項目部署
17 医疗挂号系统_【微信支付】
Which is the better prospect for mechanical engineer or Electrical Engineer?
CANoe下载地址以及CAN Demo 16的下载与激活,并附录所有CANoe软件版本
CAPL script printing functions write, writeex, writelineex, writetolog, writetologex, writedbglevel do you really know which one to use under what circumstances?
Delayed note learning
MySQL实战优化高手10 生产经验:如何为数据库的监控系统部署可视化报表系统?
Teach you how to write the first MCU program hand in hand
颜值爆表,推荐两款JSON可视化工具,配合Swagger使用真香
Vscode common instructions
[one click] it only takes 30s to build a blog with one click - QT graphical tool
Function description of shell command parser
Hero League rotation chart manual rotation
CDC: the outbreak of Listeria monocytogenes in the United States is related to ice cream products
16 医疗挂号系统_【预约下单】
嵌入式中的合作开发--函数指针
MySQL实战优化高手02 为了执行SQL语句,你知道MySQL用了什么样的架构设计吗?
Retention policy of RMAN backup