欢迎您访问南京安优网络官方网站,本公司专注于:网站制作、小程序开发、网站推广。 24小时服务热线:400-8793-956
当前位置:南京网站制作公司 > 资讯中心 > 网站知识
小程序支付(小程序端+JAVA后端)
来源:南京网站制作 时间:2019-07-19 07:32:09

南京小程序开发安优网络在最近做了一款简单的电商小程序,目前还没上线,不过支付功能已开发完,所以整理和大家分享下,有什么不对的地方,还请大家提出来,你的纠正是我最大的进步。

 
南京小程序开发说说内容前提:建议请认真看一遍官方支付文档(建议大家直接百度搜索一下微信官方支付文档就行了)
先来一张图

大体流程分析:
1.小程序:点击支付按钮,请求后台接口,返回5个必要参数(用于之后调wx.requestPayment(OBJECT))。
2.JAVA: 调用统一下单接口,生成微信预支付订单,并返回结果。
3.小程序:接收到5个参数后,调用wx.requestPayment(OBJECT),此时小程序唤起了输入密码的支付弹窗,我们可以选择关闭弹窗和支付,然后根据情况跳转到不同页面。
4.JAVA: 当在小程序内支付完后,此时微信服务器会有规律性给你的支付回调地址发起请求,通知你支付结果。
那么接下来我们详细看一下代码
 
小程序端代码
 
//点击支付按钮
async pay() {
        if(!this.address){
          wx.showToast({
            title: "请选择收货地址", //提示的内容,
            icon: "none", //图标,
            duration: 1500, //延迟时间,
            mask: false, //显示透明蒙层,防止触摸穿透,
          });
        }
        if(this.listData.length == 0){
          wx.showToast({
            title: "未选择任何商品,请重新选择商品", //提示的内容,
            icon: "none", //图标,
            duration: 1500, //延迟时间,
            mask: false, //显示透明蒙层,防止触摸穿透,
          });
        }
        if(this.allprice <= 0){
          wx.showToast({
            title: "付款金额小于或等于0元,请重新选择商品进行支付", //提示的内容,
            icon: "none", //图标,
            duration: 1500, //延迟时间,
            mask: false, //显示透明蒙层,防止触摸穿透,
          });
        }
 
        const data = await post("/api/pay/onPay", {
          openId: this.openId,
          body:this.listData[0].goods_name,
          address: JSON.stringify(this.address),
          allPrice: this.allprice,
          listData: JSON.stringify(this.listData)
        });
 
        if(data){
          if(data.model.orderId != 0){
            this.payMent = data.model;
            console.log(data);
            //返回成功,小程序端可直接唤起输入密码弹窗
            this.doWxPay(data.model);
          }else{
            wx.showToast({
            title: "系统订单生成异常,请稍后重试或联系管理员", //提示的内容,
            icon: "none", //图标,
            duration: 1500, //延迟时间,
            mask: false, //显示透明蒙层,防止触摸穿透,
          });
          }
        }
      },
//唤起输入密码弹窗
doWxPay: function(param){
        var that = this;
        //小程序发起微信支付
        console.log("发起支付")
        wx.requestPayment({
            timeStamp: param.timeStamp,
            nonceStr: param.nonceStr,
            package: param.package,
            signType: 'MD5',
            paySign: param.paySign,
            success: function (event) {
                // success
                console.log(event);
                wx.showToast({
                    title: '支付成功',
                    icon: 'success',
                    duration: 2000
                });
 
                wx.redirectTo({
                  url: '/pages/orderdetail/main?orderId=' + that.payMent.orderId
                })
            },
            fail: function (error) {
                // fail
                console.log("支付失败")
                console.log(error)
                wx.redirectTo({
                  url: '/pages/orderdetail/main?orderId=' + that.payMent.orderId
                });
            },
            complete: function () {
                // complete
                console.log("pay complete")
            }
        });
      },
 
以上就是今天南京小程序开发安优网络带来的小程序支付(小程序端+JAVA后端),希望能够在你们后期小程序开发过程中起到一点点帮助。

本文地址:http://www.njanyou.cn/web/2615.html
Tag:
专业服务:南京网站制作,南京网站制作公司,南京网站建设公司
联系电话:025-65016872
上一篇: 网站开发项目管理技巧
下一篇: 使用不准备购买的潜在客户可以做的3件事
最新案例
永银
永银
珠海跨境电商
珠海跨境电商
五颗星商城
五颗星商城
上海万客生鲜超市
上海万客生鲜超市
一九在线商城
一九在线商城
你可能感兴趣
小型企业平稳运营所需的 5 种软件类型
为什么每个人都在谈论 Advantage+ Creative
27 关于 Bing PPC 的统计数据
改善编程和 QA 之间协作的 4 种方法
您的网站给人留下第一印象:为什么好的网页设计对企业至关重要
网页设计和内容营销:最大限度地提高博客参与度的 6 个技巧
所有重要的 GA4 指标
ClickFunnels 与 Kajabi:详细比较
最后更新
打造直观体验:UX 和 UI 矩阵 了解 Advantage+ 定位 我们所知道的关于大规模谷歌算法泄漏的一切 如何撰写吸引受众注意力的营销电子邮件 如何使用数据抓取进行有效的竞争分析:分步指南 优化医疗保健提供商的 SEO 和在线形象:2024 年的最佳实践 Elementor:网站建设的首选(原因如下) 产品系列页面:提高电子商务转化率的设计策略
服务项目
南京网站制作 营销型网站 微信营销 IDC网站 精品案例