1.WxJava 微信公众号框架初体验
WxJava 微信公众号框架 https://github.com/Wechat-Group/WxJava
//下载xwjava全量的SDK代码
git clone https://github.com/Wechat-Group/WxJava.git
//下载
git clone https://github.com/binarywang/weixin-java-mp-demo-springboot.git
https://github.com/Wechat-Group/WxJava/blob/master/demo.md
WxJava微信开发框架的springboot环境Demo: https://github.com/binarywang/weixin-java-mp-demo-springboot
下载了demo后,将yml文件中内容改为下列内容后进行运行,我设置端口为8200是因为外网映射的端口就是本地的8200
logging:
level:
org.springframework.web: INFO
com.github.binarywang.demo.wx.mp: DEBUG
me.chanjar.weixin: DEBUG
wx:
mp:
configs:
- appId: wx991be475e4f6a2fb #(一个公众号的appid)
secret: 169768c91b4d1fd2cf84489d8cadbb2c #(公众号的appsecret)
token: tx #(接口配置里的Token值)
server:
port: 8200
提交接口配置信息进行测试
2.如何解决Maven依赖冲突问题
移出依赖的jar包,再强制引入依赖
在WxJava中依赖的xstream版本为1.4.11
<dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId>xstream</artifactId> <version>1.4.11</version> </dependency>
而在springcloud微服务中依赖的xstream版本为1.4.9
xstream-1.4.9.jar
3.引入WxJava框架
maven依赖
<!--依赖lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<!--依赖WxJava框架-->
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-mp</artifactId>
<version>3.5.0</version>
<exclusions>
<exclusion>
<artifactId>xstream</artifactId>
<groupId>com.thoughtworks.xstream</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>
spring-cloud-starter-netflix-eureka-client
</artifactId>
<!--排除xstream-->
<exclusions>
<exclusion>
<artifactId>xstream</artifactId>
<groupId>com.thoughtworks.xstream</groupId>
</exclusion>
</exclusions>
</dependency>
<!--引用stream-->
<dependency>
<artifactId>xstream</artifactId>
<groupId>com.thoughtworks.xstream</groupId>
<version>1.4.11</version>
</dependency>
application.yml,加入到阿波罗配置中心中去
这个中间有个小插曲,因为本地有配置文件的缓存,所以不会加载yml文件,自然无法加载公众号的配置信息,测试是失败的。
logging:
level:
org.springframework.web: INFO
com.tx.serviceweixin.mp: DEBUG
me.chanjar.weixin: DEBUG
wx:
mp:
configs:
- appId: wx991be475e4f6a2fb #(一个公众号的appid)
secret: 169768c91b4d1fd2cf84489d8cadbb2c #(公众号的appsecret)
token: tx #(接口配置里的Token值)
tx:
weixin:
registration:
code:
###微信注册码消息
message: 您的注册码为:%s
###默认提示消息
default:
registration:
code:
message: 您的消息,我们已经收到,会及时回复给您的!
引入API类
修改包名
com.github.binarywang.demo.wx.mp 为 com.tx.serviceweixin.mp
对框架引入进行测试
此时项目在阿波罗上的配置为
server.port = 8200
spring.application.name = app-tx-weixin
eureka.client.service-url.defaultZone = http://106.12.25.204:8080/eureka
swagger.base-package = com.tx.serviceweixin.impl
swagger.title = SpringCloud2.x构建微服务电商项目-微信服务接口
swagger.description = 该项目“基于SpringCloud2.x构建微服务电商项目”未经过允许的情况下,私自分享视频和源码属于违法行为。
swagger.version = 1.1
swagger.terms-of-service-url = www.tx.com
swagger.contact.name = sunny
swagger.contact.email = 860074898@qq.com
logging.level.org.springframework.web = INFO
logging.level.com.tx.serviceweixin.mp = DEBUG
logging.level.me.chanjar.weixin = DEBUG
wx.mp.configs[0].appId = wx991be475e4f6a2fb
wx.mp.configs[0].secret = 169768c91b4d1fd2cf84489d8cadbb2c
wx.mp.configs[0].token = tx
tx.weixin.registration.code.message = 您的注册码为:%s
tx.weixin.default.registration.code.message = 您的消息,我们已经收到,会及时回复给您的!