最近做了一个微信支付的对接,前面的功能还好,因为是对接第三方公司 华阳微信的接口,所以大部分数据都是以json传送的
不过支付成功后的回调接口华阳没有处理,是直接对接微信官方的,只有自己去写转换咯,网上虽然有工具类,但是只有这个地方要转换,我就直接用jdk
进行转换了,有兴趣的可以看看我的另一篇文章
http://blog.csdn.net/zxc_user/article/details/78410917
然后困扰我的主要是成功后我给微信打印的信息好像不起作用,微信还是一直在调起我的接口。。
我是根据微信官方文档做的
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7
后来在群上咨询了其他人解决方法,有人说要把返回的数据修改为 text/xml
我就照了弄一下,还真的可以 response.setContentType("text/xml");
返回之前先设置返回格式
不过还是至少会调用两次,我想是因为前面的间隔太短的原因导致的,不碍事
我等了很多分钟后也没有再进行后续的调用,说明这样是成功的了
所以各位在遇到重复回调通知的时候。明明自己已经通知微信成功了,微信还一直在调用你的接口,不妨先尝试一下这个小办法
response.setContentType("text/xml");
顺便说一下,记得后面方法不要有其他内容,要不然可能也会出现通知无效的情况
红色方框的内容是我测试的时候写的,但是在测试微信回调的时候忘了去,不排除也有可能是这种原因导致通知微信成功不起效