springBoot、java集成支付宝(支付宝开放平台)的App支付

        这里展示java对接支付宝开放平台的APP支付。首先java要对接支付宝的app支付或者H5支付的话 则第一步是要注册支付宝开放平台账号以及绑定产品等一系列操作,这里不做过多解释,有不懂的可以私信我。下面主要讲代码层面如何解决。支付宝app支付是分为秘钥验签或者证书验证的,一般默认的都是秘钥验签的方式对接的,这里将展示两种方式的对接

1.证书验签的对接 和秘钥验签的对接

 public AjaxResult buyAliCoinPay(HttpServletRequest request) throws AlipayApiException {       

        //支付宝需要的参数serverUrl、appId、private_key、format、charset、public_key、signType        

        

         //下面双斜线的则是秘钥验签的方式,

        // AlipayClient alipayClient = new DefaultAlipayClient(
        // serverUrl,
        // aliAppId,
        // privateKey,支付宝私钥
        // format,
        // charset,
        // alipayPublicKey, 支付宝公钥
        // signType);

        //下面这几行代码则是证书验签的方式

        CertAlipayRequest alipayConfig = new CertAlipayRequest();
        alipayConfig.setPrivateKey(privateKey);//支付宝应用私钥
        alipayConfig.setServerUrl(serverUrl);
        alipayConfig.setAppId(aliAppId);
        alipayConfig.setCharset("UTF8");
        alipayConfig.setSignType("RSA2");
        alipayConfig.setEncryptor("");
        alipayConfig.setFormat("json");
        alipayConfig.setCertPath(certPath);//支付宝应用公钥证书地址
        alipayConfig.setAlipayPublicCertPath(alipayPublicCertPath);//支付宝公钥证书地址
        alipayConfig.setRootCertPath(rootCertPath);//支付宝根证书路劲地址
        AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig);


        AlipayTradeAppPayRequest requests = new AlipayTradeAppPayRequest();
        JSONObject bizContent = new JSONObject();
        bizContent.put("out_trade_no", "12672186123");//订单号
        bizContent.put("total_amount", "100");//金额 切记 是字符串格式 别信支付方文档的金额格式
        bizContent.put("购买了xxx");
        // 回调地址(充值订单)
        requests.setNotifyUrl(aliPayNotifyUrl);// 回调地址
        //这里和普通的接口调用不同,使用的是sdkExecute
        requests.setBizContent(bizContent.toString());
        AlipayTradeAppPayResponse response = alipayClient.sdkExecute(requests);
        if(response.isSuccess()){
                log.info("支付宝app支付接口调用成功");
                return AjaxResult.success(response.getBody());
        } else {
                log.info("支付宝app支付接口调用失败");
                return AjaxResult.error("后台支付异常关闭!请联系管理员或者稍后重试");
        }

}

//两种支付的区别就是调用的几个参数不一样以及组参方式不一样

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值