支付宝支付java模块接入,开发

Posted lewskay

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了支付宝支付java模块接入,开发相关的知识,希望对你有一定的参考价值。

准备

  1、蚂蚁金服开放平台商户注册-》https://open.alipay.com/platform/home.htm

  2、创建应用或者沙箱应用

  技术图片

  3、创建应用或者沙箱应用

  4.配置相关参数

    回调,公钥私钥等,然后签约开发的移动端类型,签约应用,包括但不限于APP,网页支付.留存appid, 支付宝公钥,应用私钥,支付宝公钥由上传的应用私钥获取而来。

  可以下载阿里提供的sdk进行集成,免去重写造轮子https://docs.open.alipay.com/54/103419/

代码

  如果使用sdk提供的sdk进行编码速度岁提升很多,例如:

  AlipayTradeQueryRequest 订单查询

  AlipayTradeWapPayRequest  web支付表单

  AlipayTradePrecreateRequest 二维码预下单接口

  .....

  剩下的就是写业务相关方面的代码了

  。。。。。。。。。。。。

  回调:

  

@PostMapping("/aliPayBack")
public void aliPayBack(HttpServletRequest request, HttpServletResponse response) throws IOException 
    logger.debug("阿里支付成功回调接口");
    String result = "failure";
    try 
        String orderCode= request.getParameter("out_trade_no");
        Map<String, String> map = AliPayUtils.sortNotifyMap(request.getParameterMap());//对参数进行处理   应当为<String,String>
        boolean signVerified = AlipaySignature.rsaCheckV1(map, "公钥", AliConstants.UTF_8, AliConstants.RSA2);
        if (signVerified) 
            //阿里云主动通知只有两种情况  1 付款成功 TRADE_SUCCESS 2退款通知TRADE_CLOSED
            String status = map.get("trade_status");

        else 
            result = "failure";
            logger.debug(":阿里API校验未通过");
        
    catch (Exception e)
        result = "failure";
        e.printStackTrace();
    finally 
        PrintWriter out=response.getWriter();
        out.println(result);
        out.flush();
        out.close();
    

 

以上是关于支付宝支付java模块接入,开发的主要内容,如果未能解决你的问题,请参考以下文章

Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)

用h5开发的app想接入支付宝,应该去支付宝开放平台申请哪种支付方式?app支付还是手机网站支付?

Android手机APP怎么调用支付宝接口进行支付

支付宝支付接入(接入与验证)

uniapp支付宝支付的前端开发经验分享

接入支付宝支付接口:发起支付请求