Spring Boot微信开发,实现了简单的消息处理、生成二维码及扫码事件处理(基于SDK-WxJava)

Spring Boot微信开发,实现了简单的消息处理、生成二维码及扫码事件处理(基于SDK-WxJava)

本 Demo 基于 Spring Boot 构建,实现微信公众号后端开发功能。

本项目修改自 WxJava 的 Demo 演示程序 weixin-java-mp-demo-springboot,更多官方 Demo 请查阅此处。

WxJava 是业界一款广受好评的 Java 微信开发 SDK,本 Demo 旨在创建一个快速可运行的微信公众号服务,降低入门门槛,让初学者们快速体会到使用 WxJava 的方便之处。

如有问题请【在此提问】。

使用步骤:

请注意,本 demo 为简化代码编译时加入了 lombok 支持,如果不了解 lombok 的话,请先学习下相关知识,比如可以阅读此文章;另外,新手遇到问题,请务必先阅读【开发文档首页】的常见问题部分,可以少走很多弯路,节省不少时间。配置: /src/main/resources/application.yml

wx:
  mp:
    configs:
      - appId: 1111 (一个公众号的appid)
        secret: 1111(公众号的appsecret)
        token: 111 (接口配置里的Token值)
        aesKey: 111 (接口配置里的EncodingAESKey值)
      - appId: 2222 (另一个公众号的appid,以下同上)
        secret: 1111
        token: 111
        aesKey: 111

运行Java程序:WxMpDemoApplication;配置微信公众号中的接口地址:公网可访问域名/wx/portal/xxxxx (注意,xxxxx为对应公众号的appid值);根据自己需要修改各个handler的实现,加入自己的业务逻辑。

环境搭建教程

环境准备

到微信公众平台申请测试号一个,申请地址

不需要服务器,用外网映射工具,本次使用 Sunny-Ngrok

这个映射工具在开发过程起到非常重要的作用,因为微信服务器是在外网的,我们本地开发的代码是部署在本地 tomcat 服务器的,本地tomcat是不能访问外网的微信服务器的,所以要借助 Ngrok 这个工具把我们本地 ip 映射到外网,这样本地代码就可以跟微信服务器交互了,这样调试代码就非常方便了。

Ngrok 是外国的一款软件,服务器在美国,正常情况下,国内网络也是不能访问的(被墙了,大家都懂的)。在这里真的非常感谢大神 Sunny 把服务器部署到了香港,防止被墙让我们能够访问美国 Ngrok 服务器。更重要的是免费使用啊!免费使用啊!免费使用啊!

开发工具,本次使用并将长期使用 IntelliJ IDEA

部署 Ngrok

1、下载Sunny-Ngrok客户端:

2、注册Sunny-Ngrok后台管理账号:

3、登录之后开通隧道:隧道名字随便填;前置域名就是你要映射的外网地址;本地端口就是本地ip:127.0.0.1+tomcat端口号:8080(本地的都可以修改,但是微信只能访问80和443端口,所以最好用默认的,不要修改)http验证用户名和密码不要填,因为到时这个地址要部署到微信后台的,设置之后微信服务器就不能访问这个映射地址了,微信服务器不知道你的用户名和密码。

4、本地运行Sunny-Ngrok启动工具.bat,将隧道id复制到启动工具,这样本地ip就映射到外网了。

Clone我的代码,并运行起来代码下载地址

配置微信测试号页面

项目成功运行后,并且用 Ngrok完成外网映射后才能填写接口配置信息

注意:配置微信公众号中的接口地址: ngrok分配给你的域名/wx/portal/xxxxx (注意,xxxxx为对应公众号的appid值);

​点击提交,微信后台完成接口校验。

扫码关注你的测试公众号进行功能验证

实现效果

目前仅实现了简单的消息处理和扫码demo

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享