前言
- 一台云服务器(配置 web 项目环境)
- 一个域名(https)
关于服务器方面的,如果你是个小白,可以看下我其它的博客:
CentOS 服务器配置 jdk +Tomcat + mysql
本文是直接上代码,有些需要修改和解释都会说明。 |
实现接口连接的类
我的 web 开发环境是用 SSM 和 maven 搭建的,不懂可以看我的之前的博客:
SignUtil.java 的实现代码1 | import java.security.MessageDigest; |
1 | import java.io.IOException; |
到这里为止并不需要去修改什么代码,只需要将工程导出为 jar 包扔到自己的云服务器上就行方便后面微信测试号接口的链接测试。记得要放到服务器上,不然访问不到!!!
微信测试号的申请与接口连接
刚刚开始做微信公众号的时候,我们建议选择微信测试号就好,等熟悉了之后,微信公众号的配置什么的,跟测试号是一样的。
接下来就教大家怎么来申请测试号。
首先进入微信公众号的开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
点击“接口配置信息”旁边的“修改”按钮,然后按要求填写内容,然后点击提交,会提示你是否能连接上的。
微信测试号连接代码的实现
用到类的简介
上面测试了微信测试号的接口的可以连接上的,现在来实现手机上的微信测试号是如果连接上的。需要通过五个类来实现,分别是:
- WechatLoginController.java
- UserAccessToken.java
- WechatUser.java
- WechatUtil.java
- MyX509TrustManager.java
下面会一一讲解这个5个类的实现,以及一些要修改的地方。
提示:我的代码里面使用 debug 输出信息,如果不需要可以把如下面的代码给删除掉。 |
1 | private static Logger log = LoggerFactory.getLogger(WechatLoginController.class); |
1 | log.debug("weixin login get..."); |
WechatLoginController.java 的实现代码
1 | import java.io.IOException; |
解析:这段代码需要注意的是最后这一小段代码。 |
这里的意思是,用户进入微信公众号后,验证通过,并判断用户不为空,就跳转到自己想要跳转的页面。所有需要修改掉 return 的值,代码的值是返回到我项目里的其他页面。只要返回到一个简单的页面就行,这里只是做个测试,看微信测试号是否真的能够接入成功,成功就跳转。不成功就不跳转。
UserAccessToken.java 的实现代码
只是一个实体类,用来封装信息的。
1 | import com.fasterxml.jackson.annotation.JsonProperty; |
WechatUser.java 的实现代码
这也是一个实体类,用来封装信息的。
1 | import java.io.Serializable; |
WechatUtil.java 的实现代码
1 | import java.io.BufferedReader; |
解析: |
- 获取 UserAccessToken 工具类,需要修改的是开头的两个地方:
我代码里提供的是乱码,所以这里需要把 appid 和 appsecret 修改为自己的,至于在哪里找???你进入自己申请好的微信测试号就行看到了。
代码里面还使用到 JSONObject 这个类,关于这个类的相关 jar 包的引入,之前另一篇博客写过,直接看下就行。博客链接:JSONObject 使用maven引入 net.sf.json 时报错解决方法
MyX509TrustManager.java 的实现代码
1 | import java.security.cert.CertificateException; |
只是直接继承了 X509TrustManager 这个接口,并实现接口里面的方法,并不需要自己写什么。
到这里,需要实现的 java 类都实现了,同样的道理,需要把整个项目导出 jar 包,然后扔到服务器上。不然访问不到!!!
尝试连接微信测试号
登录微信测试号页面,找到测试号二维码,然后用自己的微信号扫码,使自己的微信账号位于用户列表中。
然后,在微信上直接打开下面的链接:
这个链接,有个参数需要修改下,就是 appid 这个参数后面的值需要换上自己测试号的 appid 哦,还有 redirect_uri 的参数中的域名需要换成自己的域名,还有项目名字如果自己修改了,也要换掉哦。其它的参数不要动。然后把链接发给微信上,用手机微信打开,就能发现成功进入测试号后,会跳转到自己指定的页面。