当前位置:网站首页>实现微信公众号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和消息内容即可
上面就是大概流程和思路了,知道了具体的实现流程,那么代码也就不难写了,关于对应的代码下次再写
边栏推荐
- C杂讲 文件 续讲
- Sichuan cloud education and double teacher model
- 112 pages of mathematical knowledge sorting! Machine learning - a review of fundamentals of mathematics pptx
- CAPL 脚本对.ini 配置文件的高阶操作
- The appearance is popular. Two JSON visualization tools are recommended for use with swagger. It's really fragrant
- MySQL实战优化高手10 生产经验:如何为数据库的监控系统部署可视化报表系统?
- Configure system environment variables through bat script
- MySQL实战优化高手06 生产经验:互联网公司的生产环境数据库是如何进行性能测试的?
- Programmation défensive en langage C dans le développement intégré
- [untitled]
猜你喜欢
I2C summary (single host and multi host)
What should the redis cluster solution do? What are the plans?
13 medical registration system_ [wechat login]
CANoe仿真功能之自动化序列(Automation Sequences )
软件测试工程师必备之软技能:结构化思维
Nc17 longest palindrome substring
CANoe下载地址以及CAN Demo 16的下载与激活,并附录所有CANoe软件版本
51单片机进修的一些感悟
Sichuan cloud education and double teacher model
C miscellaneous two-way circular linked list
随机推荐
15 medical registration system_ [appointment registration]
MySQL实战优化高手08 生产经验:在数据库的压测过程中,如何360度无死角观察机器性能?
CANoe的数据回放(Replay Block),还是要结合CAPL脚本才能说的明白
Contest3145 - the 37th game of 2021 freshman individual training match_ C: Tour guide
C杂讲 浅拷贝 与 深拷贝
Canoe cannot automatically identify serial port number? Then encapsulate a DLL so that it must work
Flash operation and maintenance script (running for a long time)
MySQL real battle optimization expert 08 production experience: how to observe the machine performance 360 degrees without dead angle in the process of database pressure test?
Canoe CAPL file operation directory collection
jar运行报错no main manifest attribute
Popularization of security knowledge - twelve moves to protect mobile phones from network attacks
Nc17 longest palindrome substring
MySQL实战优化高手11 从数据的增删改开始讲起,回顾一下Buffer Pool在数据库里的地位
Cmooc Internet + education
The programming ranking list came out in February. Is the result as you expected?
Control the operation of the test module through the panel in canoe (primary)
Redis集群方案应该怎么做?都有哪些方案?
13 医疗挂号系统_【 微信登录】
CAPL脚本中关于相对路径/绝对路径操作的几个傻傻分不清的内置函数
The governor of New Jersey signed seven bills to improve gun safety