1.问题描述:
目前在做支付宝的H5支付,当支付成功之后,notiy_url被支付宝成功请求, 而return_url的地址,会被系统拦截,(因为没有token)
2.场景还原
1.选择支付宝付款
2.付款成功之后,支付宝会主动调用notiy_url接口,当我点击右上角的【完成】按钮时,支付宝会主动调用return_ur接口
3.调用return_url接口之后,就会被拦截,因为没有token参数。
4.说明问题:
为什么notiy_url异步请求时我的系统不会拦截,而当我手动点击【完成】时,系统会拦截我的请求呢
5.部分代码展示:
支付宝H5异步支付回调
@PostMapping("/aliPayNotifyH5") //支付宝H5异步支付回调,必须post
public String aliPayNotifyH5(HttpServletRequest request) throws Exception{
return msProductOrderService.aliPayNotifyH5(request);
}
支付宝H5同步支付回调
@RequestMapping("/aliPayReturnUrlH5") //支付宝H5同步支付回调
public String aliPayReturnUrlH5(HttpServletRequest request) throws Exception{
return msProductOrderService.aliPayReturnUrlH5(request);
}
请问:为什么当点击完成时,我的系统会拦截同步支付的回调请求,就产生上面步骤3的情况,而异步的请求不会拦截呢?