支付 · 2021年3月25日 0

支付宝支付PC网页支付接入沙箱环境

  • 首先需要生成应用私钥和应用公钥地址
  • 生成工具使用地址上面有详细的说明
  • 然后是配置你的私钥;生成appid
    在这里插入图片描述
  • 然后就是看文档写代码文档地址
  • 我写的比较简单因为回调需要公网ip,我就没写就只做了个跳转支付,后面的其实也差不多支付网页跳转,异步通知;
  • 上代码吧直接
    //appid
    public static final String appid = "2016092400581860";
    //沙箱地址
    public static final String serverurl="https://openapi.alipaydev.com/gateway.do";
    //异步通知地址
    public static final String notifyurl="";
    //返回地址
    public static final String returnurl="";
    //默认字符集
    public static final String defaultcharset="UTF-8";
    //默认格式
    public static final String defaultformat="JSON";
  public static AlipayClient alipayClient(){
  //从前到后: 服务地址,appid,私钥,格式,字符集,公钥,加密方式
        AlipayClient alipayClient=new DefaultAlipayClient(StaticBeans.serverurl,StaticBeans.appid,StaticBeans.privateKey,StaticBeans.defaultformat,StaticBeans.defaultcharset,StaticBeans.publickey,"RSA2");

        return  alipayClient;
    }
  • controller类
@RestController
public class AliPayController {

    @RequestMapping("/Alipay")
    public void pay(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
        Map map = new HashMap();
        map.put(StaticBeans.ALI_OUT_TRADE_NO, UUID.randomUUID());
        map.put("product_code", "FAST_INSTANT_TRADE_PAY");
        map.put("total_amount", "1");
        map.put("subject", "一个苹果");
        map.put("body", "红富士");
        AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();
        request.setReturnUrl(StaticBeans.returnurl);
        request.setBizContent(JSON.toJSONString(map));
        System.out.println("请求参数为:" + JSON.toJSONString(map));
        AlipayClient alipayClient = StaticBeans.alipayClient();
        String form = alipayClient.pageExecute(request).getBody();
        httpServletResponse.setContentType("text/html;charset=" + StaticBeans.defaultcharset);
        httpServletResponse.getWriter().write(form);
        httpServletResponse.getWriter().flush();
        httpServletResponse.getWriter().close();
    }
  }
  • 测试
    在这里插入图片描述
  • 跳转到收银台,然后下载沙箱app支付宝
    在这里插入图片描述

在这里插入图片描述

  • 完事了,后续就是异步通知,没什么好说的了;网页支付比较简单,后续会更新主被扫支付的demo!