uniapp如何实现支付功能

uniapp实现支付功能的方法:首先获取可用的支付环境;然后判断用户是否有支付宝支付环境;接着再从后端接口获取相关数据配置到orderInfo里;最后拿到后端返回数据后调用相关支付函数。

uniapp如何实现支付功能

本教程操作环境:windows7系统、uni-app2.5.1版本、thinkpad t480电脑。

推荐(免费):uni-app开发教程

uniapp实现支付功能的方法:

//支付宝支付zfbPay(){uni.getProvider({  //获取可用的支付环境service: 'payment',success: res=>{if (~res.provider.indexOf('alipay')) { //先判断用户是否有支付宝支付环境uni.showLoading({title: '正在调起支付宝支付'})let params={  //给后端传什么参数看你的后端需要什么money:this.moneyCount,ispc:3}uni.request({  //再从后端接口获取相关数据配置到orderInfo里,这个接口由后端配置好了,返回结果见下图1-支付宝url: `${this.$baseUrl}/api-order/amstc/userRechargeAccountByAliPay`,method: 'POST',header: {"Token":this.userToken,"Content-Type":"application/x-www-form-urlencoded"},data: params,success: res => {if(res.data.code==200){let payInfo=res.data.data  //拿到后端返回数据后调用下面支付函数uni.requestPayment({provider: 'alipay',orderInfo: payInfo, //支付宝订单数据(string类型)success: res=>{uni.hideLoading();uni.showToast({title: '支付成功',icon:'none'})},fail:err=>{uni.hideLoading();uni.showToast({title: '支付失败,请稍后再试',icon:'none'})}});}},fail: () => {uni.hideLoading();uni.showToast({title: '服务器开小差了呢,请您稍后再试',icon:'none'})}});}else{uni.showToast({title: '获取支付宝通道失败,请检查您的支付宝是否正常启用',icon:'none'})}}});},//微信支付wxPay(){uni.getProvider({service: 'payment',success: res=>{if (~res.provider.indexOf('wxpay')) { //先判断用户是否有微信支付环境(是否安装了微信app)uni.showLoading({title: '正在调起微信支付'})let params={money:this.moneyCount,bs:4}uni.request({  //再从后端接口获取相关数据配置到orderInfo里,这个接口由后端配置好了,返回结果见下图2-微信url: `${this.$baseUrl}/api-order/amstc/userRechargeAccountByWx`,method: 'POST',header: {"Token":this.userToken,"Content-Type":"application/x-www-form-urlencoded"},data: params,success: res => {if(res.data.code==200){let resobj=JSON.parse(res.data.data)let payInfo={appid: resobj.appid,noncestr: resobj.nonce_str,package:"Sign=WXPay",partnerid: resobj.mch_id,prepayid: resobj.prepay_id,timestamp: resobj.time_stamp,sign: resobj.sign,}uni.requestPayment({provider: 'wxpay',orderInfo: payInfo, //微信订单数据(Object类型)success: res=>{uni.hideLoading();        uni.showToast({title: '支付成功',icon:'none'})},fail:err=>{uni.hideLoading();        uni.showToast({title: '支付失败,请稍后再试',icon:'none'})}});}},fail: () => {uni.hideLoading();uni.showToast({title: '服务器开小差了呢,请您稍后再试',icon:'none'})}});}else{uni.showToast({title: '获取微信通道失败,请检查您的微信是否正常启用',icon:'none'})}}});},

登录后复制

支付宝获取orderInfo的接口

8883d4c29694fb08623e0622d89fd73.png

微信获取orderInfo的接口

f1e17a613e03a335b0a094c679c4ebc.png

d13956e25631d953a35550430a94ed1.png

相关免费学习推荐:uni-app开发教程(视频)

以上就是uniapp如何实现支付功能的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3031881.html

(0)
上一篇 2025年3月13日 08:39:21
下一篇 2025年2月19日 07:46:41

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • hello uniapp怎么运行

    hello uniapp运行的方法:首先通过HBuilderX工具可视化界面;然后依次点击工具栏里的“文件->新建->项目”,并选择“uni-app”类型进行创建;最后进入“hello-uniapp”项目,并点击工具栏的“运行”…

    2025年3月13日 编程技术
    200
  • uniapp如何设置字体颜色

    uniapp设置字体颜色的方法:首先给input加上【placeholder-class】属性;然后给此属性加上样式,代码为【input::-webkit-input-placeholder】。 本教程操作环境:windows7系统、uni…

    2025年3月13日
    200
  • uniapp如何获取某个元素

    uniapp获取某个元素的方法:1、表单验证,验证是否为空,代码为【if (this[`${x}`] == ”) {return false}】;2、获取所有必填项的列表,代码为【const query = uni.create…

    2025年3月13日
    200
  • uniapp发送post请求失败怎么办

    uniapp发送post请求失败的解决办法:首先在Vue文件中引入jQuery,代码为【import jQuery from “@../../common/js/jquery-3.4.1.min.j】;然后使用jQuery发起A…

    2025年3月13日
    200
  • uniapp如何修改全局变量

    uniapp修改全局变量的方法:1、在普通页面获取全局变量,重新赋值;2、通过vue的状态管理工具vuex管理全局变量,代码为【let str = contObj.str;】。 本教程操作环境:windows7系统、uni-app2.5.1…

    2025年3月13日
    200
  • uniapp如何隐藏右侧滚动条

    uniapp隐藏右侧滚动条的方法:1、在【app.vue】的style里面外部链接【base.css】;2、直接在【app.vue】里面用条件编译,可以根据不同平台控制不同标签的属性。 本教程操作环境:windows7系统、uni-app2…

    2025年3月13日
    200
  • uniapp如何取消跨域

    uniapp取消跨域的方法:首先创建【uni-app】,并配置访问代理;然后新建页面文件,并插入标签元素;接着调用封装方法;最后保存预览查看即可。 本教程操作环境:windows7系统、uni-app2.5.1版本,Dell G3电脑。 u…

    2025年3月13日 编程技术
    200
  • uniapp如何实现文字滚动

    uniapp实现文字滚动的方法:1、将【/components/screenTextScroll.vuecopy】到自己的项目中;2、在【main.js】中添加相关代码。 本教程操作环境:windows7系统、uni-app2.5.1版本、…

    2025年3月13日
    200
  • uniapp如何获取屏幕高度

    uniapp获取屏幕高度的方法:首先新建【uni-app】项目,找到onLoad方法;然后编写【uni.getSystemInfo】方法,准备宽高的变量;最后将屏幕宽高给变量赋值。 本教程操作环境:windows7系统、uni-app2.5…

    2025年3月13日 编程技术
    200
  • uniapp如何实现直播

      uniapp实现直播的方法:首先通过推流,代码为【开始推流】;然后使用video标签实现拉流即可。 本教程操作环境:windows7系统、uni-app2.5.1版本,Dell G3电脑。 uniapp实现直播的方法: 1、推流    …

    2025年3月13日
    200

发表回复

登录后才能评论