接过支付宝支付接口的朋友应该知道,支付代码中设置的有两个回调url。
一个是同步回调url,支付成功后,自动跳转到此url,
另一个是异步回调url,支付成功后,支付宝后台异步通过post方式调用此url,此异步通知才能真正来判断是否支付成功。
但是我在开发过程中,使用支付宝沙箱环境(测试环境)时,没收到异步通知,相信大家应该也会碰到这个问题,这里记录下这个问题。
问题分类 : [“支付转账类问题”]
请选择产品 : [“电脑网站支付”]
问题描述 : 沙箱环境异步回调没有接收到
应用网关地址:https://xxxx.com
授权回调地址:https://xxxx.com/notify_url
已经通过postman post方式调用过此地址:https://xxxx.com/notify_url
后台能够接受到postman的访问请求
但是沙箱环境支付成功后,没有收到支付宝的异步请求通知,问下咋回事。
咨询了支付宝技术支持,发给他trade_no,他后台能够查到已经发送了异步通知,但是返回415状态码,(Unsupported Media Type) 不支持的类型异常。
原来他们使用的是默认的x-www-form-urlencoded Content-Type发送post请求,而我的异步通知后台是通过application/json方式接收的参数,所以报错415。
原来不是我notify_url设置的不对、不是我密钥配置的不对、不是我appid设置的不对、不是我验证签名不对,而是接收参数的方式不对。
好了,已经能够接收到异步通知了。
记录一下。
欢迎关注微信公众号,你的资源可变现:【乐知付加密平台】
一起学习,一起进步。
