1. 初始微信公众平台
微信公众平台,也就是我们通常说的“公众账”,以前叫“官方平台”或者“媒体平台”,最后才定名为“公众平台”。从微信的命名上,我可以看出公众平台并不是只给官员、媒体用的平台,而是面向全体民众开放的统台。
如果你喜欢这篇文章,请点击下面的“赞”按钮!❤️
微信公众平台地址:/
微信公众平台分为订阅、服务、小程序、企业四大部分,根据微信2016年公开课计划,未来企业会和企业微信合并,所以我们主要关注前三部分:
微信平台四大板块
我们来简单对比一下前三者的区别以及本课程与后续课程的重点:
1、订阅和服务都是传统的“公众”,具备群发消息的能力。详细区别可以参见官方平台://… 我们将重点讲解服务能力的。在服务方面,两者的模式完全一样,只不过服务可以使用更多的服务接口,而订阅是“版”的服务。因此,在后续的课程中,我们将以服务作为案例进行操作。
2、微信小程序,原名“微信小”,是内嵌于微信生态的。由于苹果、谷等限制,“小”未上线即夭折,取而代之的是功能适度缩减的“微信小程序”,其操作体验媲美原生,是时下热门的方向。杰瑞教育全新5课程也将加入热门的微信小程序。
二、账准备1、账注册
进入微信公众平台,点击右上角立即注册,选择“服务”或“订阅”进行注册(服务仅对机构用户开放,个人用户只能选择订阅)
注册的时候需要填写一系列的信息,按照提示填写就可以了,这里就不多说了。
2. 测试账户申请
如果你暂时不想注册账,或者无法注册服务,可以选择申请官网提供的测试账。申请地址://-…点击扫描二维码,即可获得具有服务所有权限的测试账。
测试账户接口
三、环境准备1、外网映射工具
在访问微信公众平台后端时,必须提供能正确访问的外网地址,微信平台对后端有两点要求:
①必须可以通过公网访问 ②必须使用80端口
要实现以上两点,我们可以选择购买外网服务器,比如:阿里云、百度云、腾讯云...都是不错的选择。如果没有服务器,可以选择使用外网映射工具,将我们的内网链接映射到公网上。一些好的映射软件包括:花生壳等...
这些软件都可以在百度上轻松搜索下载,这里简单介绍一下它们的使用方法:
①:
进入环境,切换盘符,输入:
操作
回车之后等待一会就可以得到公网链接了,下图所示阴影区域给出的链接,可以直接访问本地127.0.0.1:8080下的链接内容,分别是协议以及协议对应的地址:
操作成功接口
②花生壳,可以在软件里安装,然后在软件里操作即可。具体可以参考百度经验://363...这里就不赘述了
4.微信公众平台数据交互原理
设置好公网访问地址之后,我们自己的后端代码就可以放在公网地址上了。那么用户如何访问我们的代码呢?
我们先来看看微信公众平台的数据交互原理:
从上图可以看出,微信公众平台其实只是起到一个桥梁的作用,真正处理业务、提供服务的代码还是放在我们自己的服务器或者公网映射上。
然后我们在自己的电脑(服务器)上编写后台代码,通过映射工具提供一个公网可访问的,然后将这个绑定到微信后台。
5. 模式访问
现在我们进入实际的过程,可以参考官方的文档:/
1.填写服务器配置
进入微信公众平台,点击左侧【-基础配置】,选择【服务器配置】,即可进入配置页面:
微信平台服务器配置
在:
:我们上面说的后端服务器的公网访问地址
:者定义的验证
:随机字符串,仅当消息加解密方法使用安全模式时才需要验证
2. 验证消息是否有效
当我们点击提交的时候,微信服务器会向上面的地址发送一个请求,传递四个参数:
微信服务器获取请求参数
我们通过检查来验证该请求(验证方法如下),如果确认本次请求来自微信服务器,请原封不动地返回参数内容,则接入生效,您即成功成为者,否则接入失败。加密/验证流程如下:
接下来我们实现代码操作。
6. 和访问后端代码
1. 使用创建 项目并创建一个新的项目:
创建新的
2.在方法中,获取上述四个验证参数:
获取以上四个验证参数
3.编写工具类,执行验证方法:
写作工具类
验证步骤请参考上面三步操作流程[-2]
验证步骤
使用1加密方法↓
1加密方法
4、调用验证方法,验证结果,若验证成功,则将获取的随机串返回给微信平台:
调用验证方法
至此,工具类已经写完了。
5、启动,将本机地址(例如本机为:8080///)映射到公网,参考上面第三部分,进行公网映射,并确保公网地址可以正确访问。
我会直接把代码放在公网服务器上供访问。获取地址如下:…
7.配置公众平台后台
进入微信后台配置相关信息:
微信后台配置相关信息
点击提交,微信会发送命令给并调用方法执行我们写的验证操作,最后如果成功返回一个随机字符串则表示绑定成功。
八、源码共享 1、源码(只保留部分):
空白 ( , )
,{
= .(“”);
= .(“”);
= .(“”);
= .(“”);
出 = .();
如果(。(, , )){
//若验证成功,则按原路径返回获取的随机字符串
出去。();
2.源代码(加密方法可直接):
..实用程序;
..;
..;
{
=“”; //者定义
(,,){
//1.定义数组存储,
[] = {,,};
//2.对数组进行排序
.排序();
//3.生成字符串
= 新的();
对于(:){
某人;
//4.1加密,网上有现成的代码
温度 = (.());
//5.将加密后的字符串与微信发送的加密签名进行对比,返回结果
温度。();
(字符串){
如果( == 。()== 0){
无效的;
[] = {'0','1','2','3','4','5','6','7','8','9','','','','','',''};
尝试 {
= .("1");
.(.("-8"));
字节[] = .();
= .;
[] = [*2];
= 0;
对于 ( = 0; < ; ++) {
字节 = [];
[++] = [ > 4 & 0];
[++] = [ & 0];}
[] = {'0','1','2','3','4','5','6','7','8','9',
'','','','','',''};
尝试 {
= .("1");
.(.("-8"));
字节[] = .();
= .;
[] = [*2];
= 0;
对于 ( = 0; < ; ++) {
字节 = [];
[++] = [ > 4 & 0];
[++] = [&0];
新的();
} (五){
// 去做:
无效的;