基本代码参考自:https://blog.csdn.net/fengxueliuke/article/details/106585809
注意事项:
1.支付宝返回的二维码不能直接在浏览器中打开,而要用二维码转换工具来生成二维码,这里我是百度搜索草料二维码进行转义的
自己的解决方法:
在
//②进入支付页面
@RequestMapping(value = "/alipay")
public void alipay(@RequestParam("outTradeNo") String outTradeNo,
@RequestParam("subject")String subject,
@RequestParam("totalAmount")String totalAmount,
@RequestParam("body")String body,
HttpServletRequest req,
HttpServletResponse response,
Model model) throws AlipayApiException, IOException {
AlipayBean alipayBean = new AlipayBean();
alipayBean.setOut_trade_no(outTradeNo);
alipayBean.setSubject(subject);
alipayBean.setTotal_amount(totalAmount);
alipayBean.setBody(body);
//返回支付页面
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println(payService.aliPay(alipayBean));
// return payService.aliPay(alipayBean);
}
中
将return payService.aliPay(alipayBean)换为
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.println(payService.aliPay(alipayBean))
(这玩意整里一下午,终于自己摸索出来了)
2.支付宝沙箱环境生成的二维码只能用沙箱版本的手机支付宝来扫码,正常版本的支付宝扫会出现此二维码过期之类的错误
3.支付之后如果收不到支付宝发送的异步通知,可以使用postman等工具检查一下填写的notify_url是否能用公网ip访问到
4.如果遇到isv权限不足的问题就是因为没有签约或者应用没有添加相应的功能,应用没有上线也不能使用,开发的时候可以选择沙箱应用
5.沙箱版本的手机支付宝注册的时候收不到短信,可以联系客服索要一个账号
注册失败可参考https://blog.csdn.net/z740852294/article/details/77679256
上面写了正确使用沙箱版支付宝的方式
6.在下载沙箱钱包的时候要使用手机自带的浏览器进行下载,尽量不要使用被的浏览器,可能会下载不了