100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 微信公众号开发之配置开发服务器

微信公众号开发之配置开发服务器

时间:2019-10-22 10:10:33

相关推荐

微信公众号开发之配置开发服务器

微信公众号开发详细教程

微信公众号开发文档

需不需要开发服务器应该根据自己的业务需求来决定。如果你只是简单使用微信公众号,发送推文等简单需求,你就不需要的配置自己的开发服务器,微信公众号平台功能十分强大,不懂技术的用户也可以简单开发一个自己公众号。如果你有像成绩推送等需求,你就需要知道用户的openid,那就需要使用自己的开发服务器。废话不多说,我们来配置吧。

微信公众平台->开发->开发者工具->公众平台测试账号

appid:是微信公众号的唯一标识,通过和appsecret进行验证。

URL:开发服务器的路径,接收微信服务器发送的数据。

Token:自设定的token,和开发服务器中进行验证的token保持一致。

微信公众号用户,微信服务器和开发服务器三者之间的关系:微信公众号用户发送信息时,发送到微信服务器,微信服务器将消息转发给开发服务器,交互都是通过xml格式。

如果你是用本地tomcat,可以使用像ngrok这样的内网穿透工具,生成一个外网域名,通过域名访问本地localhost:8080.

开发者提交信息后,微信服务器将发送GET请求到填写的服务器地址URL上,GET请求携带参数如下表所示:

微信公众平台提供了大量的接口,如果我们使用这些接口进行开发就需要自己去封装参数等,发送请求到微信服务器。微信提供了开发工具。工具内封装了接口,我们只需要简单调用接口就可以,极大的简化了开发过程。

wei-java-tools依赖

<dependency><groupId>me.chanjar</groupId><artifactId>weixin-java-mp</artifactId><version>1.3.3</version></dependency><dependency><groupId>me.chanjar</groupId><artifactId>weixin-java-common</artifactId><version>1.3.3</version></dependency>

代码:

//微信配置服务器 验证@RequestMapping(value="/wxserver",method={RequestMethod.GET})public void check(HttpServletRequest request, HttpServletResponse response) {//微信服务器get传递的参数String signature = request.getParameter("signature");String timestamp = request.getParameter("timestamp");String nonce = request.getParameter("nonce");String echostr = request.getParameter("echostr");//微信工具服务类WxMpService wxService=new WxMpServiceImpl();//注入token的配置参数/*** 生产环境 建议将WxMpInMemoryConfigStorage持久化*/WxMpInMemoryConfigStorage wxConfigProvider=new WxMpInMemoryConfigStorage();//注入token值wxConfigProvider.setToken("weixin");wxService.setWxMpConfigStorage(wxConfigProvider);boolean flag=wxService.checkSignature(timestamp, nonce, signature); //验证token跟微信配置的是否一样PrintWriter out= null;try {out = response.getWriter();} catch (IOException e) {e.printStackTrace();}if(flag){out.print(echostr);}out.close();}

signature: signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。将这三个参数采用sha1算法进行加密.

boolean flag=wxService.checkSignature(timestamp, nonce, signature)

根据这三个参数,在开发服务器里面重新sha1算法加密,生成新的signature,然后和请求参数中的signature比较,相同则验证成成,成功之后返回随机字符串。配置阶段则成功。

微信开发之关键词回复:/qq_41662696/article/details/89535040

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。