楼主,这个问题解决了么,[图片],这个意思是小程序支付后主动通知后台?想想好像是可以的,不过没有看到别人用过,会不会有问题
微信小程序支付成功,但是notify_url接收不到回调如何排查此问题?商户系统和微信支付系统主要交互: 1、小程序内调用登录接口,获取到用户的openid,api参见公共api 2、商户server调用支付统一下单,api参见公共api 3、商户server调用再次签名,api参见公共api 4、商户server接收支付通知,api参见公共api 5、商户server查询支付结果,api参见公共api 根据文档进行的开发,目前在开发环境中,付款也能走通,成功。 但是以上的第4步,商户server接收支付通知,在付款成功后,商户server接收不到支付的通知, 目前用的是 wx.requestPayment 的回调,进行的支付的确认,为了更高的可靠性,想用 notiry_url做二次确认。 在 第2步,商户server调用支付统一下单的时候,设置了 notify_url: https://1bzmr3y9.qcloud.la/weapp/pay_notify 这个url上,对get和post请求,均做了 console.log() 打印,自己用工具测试,均有打印结果 但是支付完成后,无法收到,微信支付服务器的 回调,请问如何排查此问题 调用wx.requestPayment(OBJECT)发起微信支付,成功返回 {errMsg: "requestPayment:ok"} 附上部分代码 payNotify.js ```js async function get(ctx, next) { ctx.state.data = 'this is pay notify get' console.log('payNotify get ,ctx = ', ctx) } async function post(ctx, next) { ctx.state.data = 'this is pay notify post' console.log('payNotify post ,ctx = ', ctx) } module.exports = { get, post } ``` routes/index.js ```js // --- 微信支付服务器 回调 商户服务器 --- router.get('/pay_notify', controllers.payNotify.get) router.post('/pay_notify', controllers.payNotify.post) ``` 统一下单 xml ```xml <xml> <appid>wxxxxxxxxxxxxxxxx</appid> <body>微信支付</body> <mch_id>133xxxxxxxxxxx</mch_id> <nonce_str>xxxxxxxxxxxxxxxxxxxxxxxxx</nonce_str> <notify_url>https://1bzmr3y9.qcloud.la/weapp/pay_notify</notify_url> <openid>xxxxxxxxxxxxxxxxxxxxxxxx</openid> <out_trade_no>20180706000033</out_trade_no> <spbill_create_ip>193.112.197.110</spbill_create_ip> <time_start>20180706171407</time_start> <total_fee>1</total_fee> <trade_type>JSAPI</trade_type> <sign>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</sign> </xml> ``` 调试截图 get 请求 [图片] post 请求 [图片] 服务器console [图片]
2018-07-08