商户系统和微信支付系统主要交互:

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>微信支付</b

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Everly

    17人对此回答表示赞同

    在https://1bzmr3y9.qcloud.la/weapp/pay_notify这个接口的一开始就写入一些日志,看看有没有东西

    展开
    17
    3回复
    发布于 5年前

    评论(3)

    收起评论

    • 马栏山壮士 2019-01-29 12:37

      主贴在哪

      回复
    • Burian 2019-01-31 11:45

      整理了一下截图回复,都放到主贴里去了。

      回复
    • 飞翔的企鹅 2019-02-02 21:10

      如果有,证明微信回调执行过,接下来再做排查

      回复
  • 安守本分

    13人对此回答表示赞同

    展开
    13
    1回复
    发布于 5年前

    评论(1)

    收起评论

    • Sarah 2019-01-28 13:21

      还没解决,目前在赶项目进度,网上大多是php的例子,nodejs的少,用的官方小程序开发环境,不知道是不是开发服务器的关系,这个问题,应该具有普遍性,大神

      回复
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部