Java-微信支付-接口配置信息验证-配置代码和技巧


1、什么是微信支付的接口配置信息验证?

答:如下图,这个验证微信平台(微信公众平台开发者文档):http://mp.weixin.qq.com/wiki/16/1e87586a83e0e121cc3e808014375b74.html

针对看左边:开发者必读-接入指南,里面有一个php的demo(例子),这篇文章不说php,说java。

说到底,你利用微信的平台做支付,需要验证平台是否可靠,能否按照微信的要求去和微信平台进行交互。这个借口配置信息验证就是验证你和微信平台的沟通是否通畅。


2、验证的代码和项目里关于支付的代码是什么关系?

准确的说,二者是独立的,不需要写在一起,因为这个验证只是用于证明你所在的域名可以和微信支付平台进行沟通,所以需要确保的是,你的域名可以在外网访问到,获取外网域名的办法很多,如果你有一个公网域名那不用说,如果没有也不用担心,可以使用花生壳、nat123等等域名工具软件。

3、Java的Java-微信支付-接口配置信息验证的代码是什么?

4、技巧。

要说人家已经把代码放到网上了,我就不需要再写这篇文章了,但是实在是有点无语整个过程。

首先,3里面的代码是可以直接用的,这个代码可以自己写一个web项目,然后布置好域名,技巧就是

在 “ public class CoreServlet extends HttpServlet { ” 这个方法中,如下在 out.print(echostr)前加一句:System.out.println("微信运行到这里;了");


因为验证机制是,微信给你发个串,串里是一些参数和加密好的东西,你需要这些参数利用特定加密方法得出加密的东西,和微信一样就会告诉微信,ok了,就是上面这句代码,我的问题是不管我怎么尝试,在微信支付平台的页面也无法成功,


但是代码显示已经运行到给微信回复了,最后放弃页面校验,直接到微信支付的项目测试,没想到,其实已经OK了。

这说明,不需要必须在微信公众平台的页面测试通过,只要你写的测试代码运行到回复就说明你和微信支付平台的沟通是畅通的。


5、其他技巧。

·(1)微信测试号每天的测试次数是有限的,达到上限后,即使请求正确,微信平台也不会发回确认通知。

·(2)微信支付中有一个授权号,这个授权号是用户和公众号一一唯一对应的,就是一个用户和一个商户确定唯一的一个,并且是恒定 的一个授权号,这个在测试的时候很重要,你可以从微信返回的XMl报文中获取一个授权号(openID),然后就可以避开微信授权去做测试了。

·(3)微信回调地址是怎么回事?如果你的项目使用的域名和回调地址写的域名不同,很抱歉你无法成功完成支付,除非你跳过微信授权,就是采取(2)中的方法。

·(4)微信支付需要,商户号、公众号和授权号。

·(5)微信支付测试需要白名单

6、文章不定期更新。