当我在调取微信H5支付后,付款成功,点击微信页面的完成,会跳转到我传过去的redirect_url,我再在这个地址里面去调取微信查询该订单的支付结果,结果返回的是NOTPAY,然后我看了一下,我调取微信查询订单返回的生成日志时间是2019-01-30 12:51:34;然后微信异步通知的notify_url方法我生成日志信息时间是2019-01-30 12:52:06;这是有多久的延迟哦?这样我怎么在redirect_url里面及时的获取我的支付结果呢?
总的就是说,我支付成功了,但是返回到redirect_url链接里面时,我去查询该订单在微信的支付结果却是未支付,当过了一阵我再去查询是支付成功了,这样我怎么在redirect_url里面及时的获取支付结果呢?
有没有知道的朋友,帮帮忙啊
好了,已经解决了。
您好,可以将您的解决办法分享出来,让更多的开发者发现。感谢
其实是文档没有看的全,请参考https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=15_4页面里的红字注意的第 2 点:
注意:
1.需对redirect_url进行urlencode处理
2.由于设置redirect_url后,回跳指定页面的操作可能发生在:1,微信支付中间页调起微信收银台后超过5秒 2,用户点击“取消支付“或支付完成后点“完成”按钮。因此无法保证页面回跳时,支付流程已结束,所以商户设置的redirect_url地址不能自动执行查单操作,应让用户去点击按钮触发查单操作。
虽然是解决了,但还是觉得体验效果不好,不能自动执行确实不智能,谢谢。