支付宝APP支付

 @ResponseBody
    @RequestMapping("/aliAppPay")
    public String aliAppPay(HttpServletRequest rep) {

        String packName = "";

        String payAmount = "";
        String orderNo = "";
        String id = rep.getParameter("id");

        OrderV orderV = orderService.getOrderVById(Integer.parseInt(id));
        if (orderV != null) {
            packName = orderV.getPackageName();
            payAmount = orderV.getPrice().toString();
            orderNo = orderV.getOrderNo();
        }


        //实例化客户端    https://openapi.alipay.com/gateway.do
        AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipaydev.com/gateway.do", APP_ID, APP_PRIVATE_KEY, "json", "UTF-8", ALIPAY_PUBLIC_KEY, "RSA2");


        //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称://alipay.trade.app.pay
        AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
        //SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方//式(model和biz_content同时存在的情况下取biz_content)。
        AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
        model.setBody("IPHONE6");
        model.setSubject(packName);//商品的标题/交易标题/订单标题/订单关键字等。
        model.setOutTradeNo(orderNo);//商户网站唯一订单号

        model.setTimeoutExpress("1m");//设置未付款支付宝交易的超时时间,一旦超时,该笔交易就会自动被关闭。
        // 当用户进入支付宝收银台页面(不包括登录页面),会触发即刻创建支付宝交易,此时开始计时。
        //  取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,
        // 都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。
        model.setTotalAmount(payAmount);  //订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]   model.setTotalAmount("0.01");
        model.setProductCode("QUICK_MSECURITY_PAY");//销售产品码,商家和支付宝签约的产品码,为固定值QUICK_MSECURITY_PAY
        request.setBizModel(model);// 将model 参数发送
        request.setNotifyUrl("");//回调地址
        //   request.setReturnUrl();
        try {
            //这里和普通的接口调用不同,使用的是sdkExecute
            AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);

            System.out.println(response.getBody());//就是orderString 可以直接给客户端请求,//无需再做处理。
            return "success";
        } catch (AlipayApiException e) {
            e.printStackTrace();
            return "fail";
        }


    }


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值