微信小程序推送服务号消息(一)【Go+微信小程序+微信服务号+微信开放平台】

一、需求场景

        业务需要给微信小程序用户在某些场景推送微信服务号消息,例如:订单即将超时,电子合同签约超时等;

二、开发准备

1、开通微信服务号

        入口:微信公众平台

        1.1 在服务号中获取推送消息所需的配置信息,如模板ID,模板所需变量,APPID和密钥:

        1.2 在【设置与开发 ->基本设置】中,获取APPID和AppSecret密钥,并配置发送服务器的外网IP白名单

        1.3 在【设置与开发 ->基本设置 ->服务器配置】中配置事件回调地址:我用的铭文模式,配置完成点击提交的时候,会向所填写的URL地址发送一个GET请求,校验服务器可用,因此配置的这个接口需要满足【既可以接受Get请求,也可以接受Post请求】【Token自定义,密钥随机】

        

注意:开启时会提示如下信息,有特殊情况的同学,请考虑影响范围:

2、开通微信小程序

        开发小程序授权登录时,需要用到APPID和密钥;小程序登录 | 微信开放文档

3、开通微信开放平台

        入口:微信开放平台

4、在开放平台绑定公众号和小程序

5、为什么要开通开发平台?

        5.1 为了获取微信生态用户的唯一标识:unionID,

        5.2 在小程序授权登录的时候,保存小程序用户的OpenID和unionID,后面需要用unionID去查询另一张自定义表中,服务号关注用户的OpenID,来推送服务号消息【为什么这么麻烦?因为不同微信应用都有自己的OpenID!】UnionID 机制说明 | 微信开放文档

        5.3 必须在开放平台绑定小程序和公众号之后,才能通过接口拿到对应的UnionID

三、前置细节

       1、 基本上都是运营人员配置的公司账号,开发相关设置要了账号,自行配置

       2、 开发多看文档微信官方文档 | 微信开放文档

       3、后续文档提供具体接口代码的使用说明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/224653.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot实现验证码功能

转载自 : www.javaman.cn 1、编写工具类生成4位随机数 该工具类主要生成从0-9,a-z,A-Z范围内产生的4位随机数 /*** 产生4位随机字符串*/public static String getCheckCode() {String base "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmn…

初刷leetcode题目(9)——数据结构与算法

😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️Take your time ! 😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️…

【数据结构】什么是栈?

🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 📌栈的定义 📌元素进栈出栈的顺序 📌栈的抽象数据类型 📌栈的顺序存储结构 📌栈的链式存储结构 链栈的进…

JSP 条件动作标签之choose when otherwise组合标签详解

好 上文JSP 条件动作标签之if标签详解中 我们详细的说了说 if标签 但是 这个if是没有else的 多少对我们的编程习惯没有那么友好 所以 就出现了另外一种语法 由 choose when otherwise组成 和我们java中的switch语句 我们的基本语法就是 外面一个大的choose包裹起来 里面是很多…

Spring源码解读之创建bean

本文章我们会解读一下Spring如何根据beanDefinition创建bean的; 代码入口: AnnotationConfigApplicationContext applicationContext new AnnotationConfigApplicationContext(AppConfig.class);applicationContext.refresh(); 当spring执行refresh(…

使用mock.js模拟数据

一、安装mock.js npm i mockjs 二、配置JSON文件 我们创建一个mock文件夹,用于存放mock相关的模拟数据和代码实现。 我们将数据全部放在xxx.json文件夹下,里面配置我们需要的JSON格式的数据。 注意:json文件中不要留有空格,否则…

系列二十四、Spring设计模式之策略模式

一、前言 对于我们Java开发人员来说,Spring框架的重要性不言而喻,可以说Java领域之所以发展这么壮大,生态这么丰富,功能这么强大,是离不开Spring以及由其衍生出来的各种子模块的,正是由它们共同奠定了JavaE…

好用的样式动画库集合(css、js)

文章目录 前言一、Animate.css二、Anime.js三、CSShake四、Hover.css五、AniJS六、Animista七、Tachyons-animate八、Sequence.js九、Infinite十、OBNOXIOUS.CSS十一、MOTION UI十二、Keyframes.app十三、AnimXYZ十四、Whirl十五、Hamburgers十六、Vivify十七、Magic Animation…

C++标准模板库 STL 简介(standard template library)

在 C 语言中,很多东西都是由我们自己去实现的,例如自定义数组,线程文件操作,排序算法等等,有些复杂的东西实现不好很容易留下不易发现的 bug。而 C为使用者提供了一套标准模板库 STL,其中封装了很多实用的容器&#xf…

网络工程师精华篇,50种网络故障及解决方法大集合

上午好,我的网工朋友。 做网络工程师,自然离不开网络,而日常工作中能搞多少大项目?最常见的其实还是网络故障的处理了。 怎么最高效地排查网络故障?怎么简单几招通网? 今天就从基础的入手,分…

QT QComBox实现模糊查询

一、概述 在Qt中,可以通过QComboBox和QLineEdit实现模糊查询的功能。模糊查询是指根据用户输入的文本,在下拉框的选项中进行模糊匹配,并动态地显示匹配的选项。 二、基础知识 1、QCompleter (1)QCompleter 是 Qt 框架中提供的一个用于自动…

巅峰对决 LlamaIndex 与 OpenAI API大比拼

我们进行了一项详尽的分析,比较了 OpenAI 助手 API 和 LlamaIndex 在 RAG 性能方面的差异。目的是使用Tonic Validate评估各种RAG系统,该系统是一个RAG评估和基准平台,同时使用开源工具tvalmetrics。本文中使用的所有代码和数据都可以在这里找…