是这样的最近在调小程序的支付接口,其他步骤基本上都已经没问题了,但是服务器端接收不到微信的回调请求,导致一直不能成功支付
满足以下几点:
1.外网能通过回调地址直接访问,没有登陆拦截
2.请求格式为 https://xxxx.com/xxx/xxx 没有携带任何参数
3.服务器端入方向的所有端口都对外开放
找了一天了,还是找不到问题在哪,希望知道的大神指导指导我
![]() |
1
yimity 9 天前
你在外网直接访问给微信的回调接口能不能访问到?
|
2
ivanMeng 9 天前
1.查看 nginx 日志是否有回调访问日志。
2.代码之中提供 log 记录。 3.微信本身存在问题几率极低。回调时间是逐渐变长。要开始的 15s/15s/30s......等 4.增加主动查账业务 然后进行修改订单进行你接下来的业务 |
![]() |
4
qiayue 9 天前
先看 nginx 确认微信到底有没有调你的接口。
另外,回调地址是你下单时填进去的,会不会你填的是另一个地址。 |
5
jtping 9 天前
看了一下 nginx 日志里没有记录
|
8
R18 9 天前 ![]() 查下 CDN 的 WAF 是不是被拦截了。我前段时间才遇到过某家支付的回调被 CF 的 WAF 拦截掉了。
|
![]() |
9
hlwjia 9 天前 ![]() 如果是之前没成功过,那就是微信支付后台哪里没配置白名单吧。
如果是之前可以成功,突然不行了,那目前确实看不出哪里出问题(假设你那边已经排查完整) |
![]() |
12
zpfhbyx 9 天前
|
13
1iuh 9 天前
服务器在哪里?
|
20
micean 9 天前
如果是沙箱的话,可以考虑是腾讯自己的问题,去开发社区问问吧。
|
![]() |
21
phpcxy 9 天前
试试先不用 https,直接 http 来一发
|
![]() |
22
rogwan 9 天前
先去微信账户看下对账记录,确定付款状态;然后再检查有没有回调的请求;最后再看服务器处理请求成功的业务逻辑是不是写对了。
|
![]() |
23
TimPeake 9 天前
域名白名单之类的
|
![]() |
29
radiocontroller 9 天前
现在钱还没付掉?
|
![]() |
30
ReinerShir 9 天前
我记得测试环境沙箱模式是不能支付的,那么也就无法触发支付成功回调啊?
|
31
jtping 9 天前
@radiocontroller 对的 微信那边处于待支付状态
|
32
jtping 9 天前
@ReinerShir 不是沙箱模式
|
33
Lemeng 9 天前
是不是账号状态异常
|
![]() |
34
yxzblue 9 天前
微信回调是 POST 请求
|
![]() |
36
rogwan 9 天前 via Android
@jtping 你可以看下微信报错的具体 error code,会提示错误类型的。猜测可能是你没有按微信要求生成正确的密钥证书,或者是支付开发者 ID 权限开通的不够。
|
![]() |
37
hlwjia 9 天前
啊。你用户那边都没支付成功啊? 那个回调是用户支付成功后才有的。
如果 client 那边的支付出问题了,那估计是调用问题,参数啥的都检查一遍 |
![]() |
46
phpcxy 9 天前
原来是还未支付成功,那就还没到回调那一步了
|
49
daijialong 9 天前
接口用什么语言写的?
|
50
jtping 9 天前
@daijialong java
|
![]() |
51
xiangpeng 9 天前 via iPhone
用户正常支付完才回调,订单状态未支付的话先排查支付问题吧
|
52
sevenzhou1218 9 天前
题外话,话说你不轮询吗?
|
53
daijialong 9 天前
@jtping 微信官方文档上看是 xml 方式传参 试着不指定请求的 Content-Type
|
![]() |
54
ByteChen 9 天前
在商户平台设置 apiv3key 了吗
|
56
jtping 8 天前
@daijialong 我调的是 v3 版本的接口
|
58
jtping 8 天前
@sevenzhou1218 轮询啥...
|
59
Achiii 8 天前
支付成功才会回调。然后回调后处理业务逻辑把订单状态改成已支付....
|