SpringBoot接入微信公众号(测试)整体流程
2018-03-26 17:48
459 查看
第一步:申请一个测试的公众号
来吧,动动你的小手点击这个>>>>>>>>>>测试公众号的申请网址:微信测试公众号入口
第二步:进入了界面是下面这个样子滴
如图中标识的三个地方,1、2、3、分别是URL,Token、JS、我们该怎么填呢,不要急,别关闭页面进入第三步
第三步:在你的IDEA编译软件中启动好一个SpingBoot项目,并且写好一个Conller,一定要能在本机当中访问哦
例如:下图我的效果
第一张图是控制层,是为了返数据的,,不用跟我一样,,但是,,你的服务一定要能在浏览器里面可以访问的!!!!!!一定要在浏览器里面可以访问的!!!!!
第四步:需要大佬们掏钱了
购买域名和穿墙代理的两个东西
点我>>>>>>>只要八块钱>>>>>没有打广告>>>>>好用>>>>NATAPP–开启您的内网穿透之旅
买好了没,大佬们,,,要买二级域名哦,,,,都买了,,才八块,,,弄好的界面是这样的吧,,,,
仔细看人家是怎么配置的,然后把你买的域名啥的都按照上面写的指导配置好,就可以映射到你的本机地址上了,,然后再通过域名+接口名访问试试。如图是我自己试验的结果,快看不是localhost了吧
第五步:买好了域名,就-返回—到刚刚–微信的–页面吧,
按照—-下图—中说的来
第六步:回到—你的—IDEA—编辑器中
建立一个Controller,,以下是我的Controller,,直接复制代码就好
按照上面的写好这个Controller,,然后重启!!!重启!!!重启之后,按照路径访问,控制台报错空指针异常即可,因为是get请求,路径没有带参数,所有会报空指针异常
第七步:回到微信公众号的哪个界面,,,点击提交,,看看是不是可以成功了呢
第八步:填写你的二级域名在那个js框中,,,记得——不带http://!!!!——–不带http://!!!!——不带http://!!!!
完毕!!!!!!!!!
来吧,动动你的小手点击这个>>>>>>>>>>测试公众号的申请网址:微信测试公众号入口
第二步:进入了界面是下面这个样子滴
如图中标识的三个地方,1、2、3、分别是URL,Token、JS、我们该怎么填呢,不要急,别关闭页面进入第三步
第三步:在你的IDEA编译软件中启动好一个SpingBoot项目,并且写好一个Conller,一定要能在本机当中访问哦
例如:下图我的效果
第一张图是控制层,是为了返数据的,,不用跟我一样,,但是,,你的服务一定要能在浏览器里面可以访问的!!!!!!一定要在浏览器里面可以访问的!!!!!
第四步:需要大佬们掏钱了
购买域名和穿墙代理的两个东西
点我>>>>>>>只要八块钱>>>>>没有打广告>>>>>好用>>>>NATAPP–开启您的内网穿透之旅
买好了没,大佬们,,,要买二级域名哦,,,,都买了,,才八块,,,弄好的界面是这样的吧,,,,
仔细看人家是怎么配置的,然后把你买的域名啥的都按照上面写的指导配置好,就可以映射到你的本机地址上了,,然后再通过域名+接口名访问试试。如图是我自己试验的结果,快看不是localhost了吧
第五步:买好了域名,就-返回—到刚刚–微信的–页面吧,
按照—-下图—中说的来
第六步:回到—你的—IDEA—编辑器中
建立一个Controller,,以下是我的Controller,,直接复制代码就好
package com.imcoo.sell.conntroller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.Arrays; @RestController public class Test { private String TOKEN = "good"; @GetMapping("/sell/test") public String test(@RequestParam("signature") String signature, @RequestParam("timestamp") String timestamp, @RequestParam("nonce") String nonce, @RequestParam("echostr") String echostr) { //排序 String sortString = sort(TOKEN, timestamp, nonce); //加密 String myString = sha1(sortString); //校验 if (myString != null && myString != "" && myString.equals(signature)) { System.out.println("签名校验通过"); //如果检验成功原样返回echostr,微信服务器接收到此输出,才会确认检验完成。 return echostr; } else { System.out.println("签名校验失败"); return ""; } } public String sort(String token, String timestamp, String nonce) { String[] strArray = {token, timestamp, nonce}; Arrays.sort(strArray); StringBuilder sb = new StringBuilder(); for (String str : strArray) { sb.append(str); } return sb.toString(); } public String sha1(String str) { try { MessageDigest digest = MessageDigest.getInstance("SHA-1"); digest.update(str.getBytes()); byte messageDigest[] = digest.digest(); // Create Hex String StringBuffer hexString = new StringBuffer(); // 字节数组转换为 十六进制 数 for (int i = 0; i < messageDigest.length; i++) { String shaHex = Integer.toHexString(messageDigest[i] & 0xFF); if (shaHex.length() < 2) { hexString.append(0); } hexString.append(shaHex); } return hexString.toString(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } return ""; } }
按照上面的写好这个Controller,,然后重启!!!重启!!!重启之后,按照路径访问,控制台报错空指针异常即可,因为是get请求,路径没有带参数,所有会报空指针异常
第七步:回到微信公众号的哪个界面,,,点击提交,,看看是不是可以成功了呢
第八步:填写你的二级域名在那个js框中,,,记得——不带http://!!!!——–不带http://!!!!——不带http://!!!!
完毕!!!!!!!!!
</div>
相关文章推荐
- 史上最强SpringBoot接入微信公众号(测试)整体流程
- 基于Springboot的微信公众号接入、通过网页授权机制获取用户信息
- 微信开发——基于springboot接入微信公众号(ngrok内网穿透技术)
- Spring Boot(三):单元测试(工程师必备素养)之service测试
- 微信公众号开发全部流程,测试号开发微信授权登陆 3
- 开发者测试-采用精准测试工具对Spring Boot应用进行测试
- 公众平台测试帐号开发全流程第3篇-接入
- Spring boot之单元测试
- 企业级后台接口开发。环境基于spring+springboot+springmvc+mybatis。测试 junit4
- 微信测试号开发之一 接入微信公众号
- spring-boot缓存测试
- spring boot 学习(三)API注解记录及测试
- spring boot 源码解析56-actuator请求处理流程(以EnvironmentEndpoint为例)
- [置顶] 基于springboot+mybatis的微信公众号开发第一篇-基本架构
- 手机APP测试技术-整体测试流程框架
- SpringBoot中的Junit测试
- eclipse下SpringBoot开发和测试
- springboot测试的时候status(),content()方法报错
- Spring Boot启动流程详解(一)
- spring boot 运行流程简析