微信中的填写服务器配置完成后就进入验证服务器地址的有效性,也就是微信接入验证。公众平台测试账号中只需配置下图中的两项即可。
当你点击提交信息时微信就验证你所填写的服务器地址的有效性,验证成功是会出现配置成功字样,失败则出现配置失败。如下如所示
接下来我们来看看微信公众平台开发者文档
从上图可以看出使用GET请求来访问我们提供给微信公众平台的URL,并且携带了四个参数。这是我们可以写一个如下方法
接着我们需要获取微信给我们发送的四个参数,对于springmvc来说有多种方式来接受这些参数,这边列出一些
- 第一种
- 第二种
- 第三种
本人是采用第三种方式,在coreByGet方法中加入一个包含微信提供给我们四个参数的bean,这样微信GET请求时的参数全部会注入到这个bean中,而Base这个bean中包含接口配置信息的Token。
接收参数的问题已经解决,那么我们来看看接下来需要做什么
接下来看看加密/校验流程
具体流程可以参照下图
首先是字典序排序,java中比较简单sort方法一下就好了,代码参照如下
String[] strs = new String[] { validation.getToken(), validation.getNonce(), validation.getTimestamp() };
Arrays.sort(strs);
然后拼接成一个字符串
StringBuilder appendStr = new StringBuilder();
for (int