微信支付回调返回成功,但是还是继续调用问题

    技术2022-07-10  178

    微信支付的心得

    首先,微信支付的文档要有顺序的看不能只看某一部分,比如你要做微信支付 ,你使用微信的***统一下单接口***------》就要看***支付结果通知***------》还要看***查询订单***,顺序仅供参考,不是必须的,看了后你应该会有已支付的流程在脑海。同时一定要注意细节。

    例如 在 查询订单***的接口中的返回值有***交易状态 trade_state 是有返回的,但是在***支付结果通知***的接口中是没有的,一定要看清除,微信的文档一定要仔细对比,否则,你一定会有重新做的冲动。。。。。。。

    例如 在 支付结果通知 的接口中返回给微信确定信息是,我想大家都能看到在文档的末尾处返回示例,但是微信还是会回调你的接口,哈哈。。。 我也看其它的博客和论坛,说啥的都有,都不行。。。 其实微信要我们返回字符串给他,记得是类似Stringbuffer拼接的那种字符串,

    正确的返回示例

    Stringbuffer s = new StringBuffer(); s.append("<xml>"); s.append("<return_code><![CDATA[SUCCESS]]></return_code>"); s.append("<return_msg><![CDATA[OK]]></return_msg>"); s.append("</xml>"); return s;

    错误的示例

    String s =""; s= "<xml>" + "<return_code><![CDATA[SUCCESS]]></return_code>" + "<return_msg><![CDATA[OK]]></return_msg>" + "</xml> "; return s;

    看着一样,其实不一样,此时脑海想起一首歌 。。。。。

    后续。。。

    支付顺序

    统一下单接口 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1

    支付结果通知 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_7&index=3

    查询订单 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_2&index=4

    退款顺序

    申请退款 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_4&index=6

    退款结果通知 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_16&index=11

    查询退款 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_5&index=7

    写的不好,错误之处,还望不吝赐教,欢迎斧正

    Processed: 0.028, SQL: 9