微信支付回调地址,是否能使用公网IP地址开头?
来源:13-15 订单状态未成功修改的原因
诺丁山丶
2018-12-02
'pay_back_url' => 'http://91.123.44.56/index.php/api/v1/pay/notify'
我使用的是腾讯云的公网ip(上面url中的ip,是我模仿的,非真实的ip地址),作为回调地址。
支付可以成功,但是无法回调。
想问下老师,微信支付的回调地址是不是只能使用域名(如back.test.com, test.com, www.test.com),而不能使用公网ip?
3回答
-
建议这样测试,在接收回调函数里 print一下,然后部署到公网上。支付,看看微信回调是否能触发这个print或者其他的log日志。我映象中ip微信是不支持的,但确实我不太确定。你可以在本地做一个内网穿透吗,内网穿透都能收到微信回调啊。
012018-12-04 -
诺丁山丶
提问者
2018-12-03
不好意思,老师,之前的搞错了。这个公网ip是正式的,http://94.191.91.160/api/v1/banner/1 是能访问到的.
这个是微信支付的回调地址:http://94.191.91.160/index.php/api/v1/pay/notify
我用postman模拟微信回调(POST方式,带着xml数据)的得到的结果是这样的
订单状态并未更改为已支付状态
但是,我在本地做同样的模拟测试的时候,却可以正确更改订单状态为已支付。
本地和线上的代码,除了服务器的URL不一样以外,代码都是一模一样的。
按道理说,我能通过微信的回调地址获取到xml数据,说明微信回调地址是可以正常访问到的,微信也确实访问并传回xml数据了。
请问老师,会是什么原因造成的?还是微信回调地址就不支持公网IP,必须使用域名?
00 -
7七月
2018-12-03
你这是公网ip?我点击都无法访问。公网ip起码要能够访问到啊。
012018-12-03
相似问题