支付宝支付成功之后,没有执行异步通知

暗桔子 发布于 2012/07/12 10:05
阅读 22K+
收藏 0

Linux基金会免费官方培训及考试申请即将截止,戳这里申请!>>>

支付宝在支付成功之后没有执行异步通知,同步是没有问题的,异步的路径没有问题,服务器上可以访问到,但确确实实是没有执行,求助高手...
加载中
0
leo108
leo108
异步执行的代码有问题吧,自己写下日志看看哪里有问题……不过话说这个确实很难调试……
0
景愿
景愿
怀疑你没有外网进来的端口
0
十一文
十一文

1.首先看看你的日志,有没有淘宝异步通知的请求

如果是,看看是不是你们的防火墙限制淘宝ip的。或者你们用域名或者ip在外网不能访问。

如果以上解决还有问题,直接咨询淘宝

2.如若不是,看看代码哪里有问题。看看错误日志等

 

 

0
彭坤
彭坤
如果你的异步调用路径跟前台跳转路径在同一个站点下,而前台能调用,说明后台异步调用的返回路径应该没有IP权限方面的问题。因为前台站点所在的服务器肯定是80端口对全部IP开放的。建议你写一段日志存储代码,在开始所有逻辑之前,先保存一份调用日志,保存完整的调用参数列表,因为异步调用是POST方式的,从web服务器日志里看不到调用的参数。然后测试几次,看看这个日志有没有产生内容。如果有内容,说明支付宝调用你了,你的逻辑部分有问题。如果没日志,说明支付宝没调用,这就需要检查你发起的时候提交给支付宝的路径了,有时候可能是极不起眼的拼写问题。支付宝不会有不调用的情况,除非你给他的路径是错的。
0
彭坤
彭坤
另外,无论前后台调用路径,都必须止于文件名或路径名,不能在后面再加?XX=XXX&xx=xxx之类的参数列表。看看有没有这方面的问题。
0
XuFulong
XuFulong
你先把 异步通知 那个页面的代码 放在  return_rul 前台返回中测试,没有问题之后,将关键代码整体迁移。然后 把异步通知页面的地址 放在支付宝参数中就可以了。
0
杨争2018
杨争2018
我也遇到同样的问题。return_url和notify_url在同一个服务器上面。访问地址只有url里面的 return和notify是不同的。  前台可以正常的支持。  从日志里面看。支付宝的服务器根本没有调用到接口上面来。
0
RobinWang
RobinWang
应该和oauth2.0鉴权是redirect_uri访问不到是同样的问题吧!
0
稻草鸟人
稻草鸟人

虽然这个问题问了好久了,还是总结一下吧。可能原因应该就下面3个

1. 这个项目的返回地址也就是上面别人提到的notify_url,外网无法访问

2. 本身notify_url里面写的代码就可以问题,可以打印一下接收的返回值是否该有的都有了,最重要的生成签名的那些参数不能多也不能少

3. 配置的公钥和私钥都检查一下,看看是否有错误

0
开开心心打酱油
开开心心打酱油
notify_url代码有问题吧,是不是有别的输出
返回顶部
顶部