uniapp项目订单支付

文章描述了如何请求后台接口获取商品详情,特别是与支付相关的参数,如nonceStr、package、timeStamp和signType等。然后根据不同的平台环境(微信小程序和App)进行条件编译,构建相应的支付参数对象。最后,调用uniapp的requestPaymentAPI进行支付操作,处理成功或失败的回调函数。
摘要由CSDN通过智能技术生成

一.请求后台接口,拿到后台接口返回的商品详细信息

post("xxx", "xxx", {
							xxx: that.xxx,
							xxx: that.xxx,
						}).then(res => {
console.log(res)
})

 二.后台返回的商品参数

//调用微信支付界面需要的参数
							/**
							 * nonceStr 签名随机字符串,
							 * package 商户订单号 ,
							 * timeStamp 时间戳,
							 * signType 签名类型,
							 * paySign 签名
							 * 
							 * */

三.条件编译

const {
								appId,
								nonceStr,
								packageValue,
								timeStamp,
								signType,
								paySign,
								parthnerId,
								prepayId,
								sign
							} = res.data;
//微信小程序支付
							// #ifdef MP-WEIXIN
							const payParam = {
								appId,
								nonceStr,
								package: packageValue,
								timeStamp,
								signType,
								paySign
							};
							// #endif
//app支付
							// #ifdef APP-PLUS
							const payParam = {
								appid: appId,
								noncestr: nonceStr,
								package: packageValue,
								prepayid: prepayId,
								parthnerid: parthnerId,
								timestamp: timeStamp,
								sign,
								signType: 'MD5',
							};
							// #endif

四.调用uniapp支付api

	// #ifdef MP-WEIXIN  || APP-PLUS 
							uni.requestPayment({
								provider: "wxpay",
								// #ifdef MP-WEIXIN
								...payParam,
								// #endif
								// #ifdef APP-PLUS
								orderInfo: payParam,
								// #endif
								success(res) {
									uni.redirectTo({
										url: '/ModuleA/success/success'
									})
								},
								fail(err) {
									uni.$u.toast('支付失败!')
								}
							})
							// #endif

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值