问题描述:
易宝支付回调不成功,可以完成支付,但是订单状态未更改。因为回调问题,搞得我头大,找不到头脑。
思考:
出现这种问题,第一,首先考虑是否是回调地址的问题;第二,考虑是否是回调代码逻辑出错,导致程序未运行下去。
对于第一种,需要考虑两个方面,1,发起支付时,回调地址参数传输错误;2,回调地址有问题,支付那边回调,无法访问到回调地址。
第二种,就要考虑,用写日志的方式,获取返回的参数并记录,通过日志来查找问题。
解决过程:
1,首先根据上述思考,再加上与易宝支付工作人员沟通对接,确定问题所在。
根据上述问题,可以确定是我们回调地址,也就是我们测试服务器拒绝了回调请求,这种问题的原因呢,也有好几种,与服务器的配置有关,1,有可能是一个服务器上绑定多个域名(这个我也没测试,看是不是这个原因);2,也有可能是不同jdk版本问题(如下图)。不过我的开发语言是php,似乎不存在jdk 版本这种问题吧;3,https证书问题;4,服务器防火墙问题等。
2,为了确认是服务器问题,首先可以使用其他服务器来测试,将回调地址改成其他服务器的地址,首先看是否能接受到回调信息,如果可以接收到信息,即可确认就是服务器问题。
剩下的就具有问题具体解决啦啦啦啦啦。