uni-app app平台支付宝支付

一、App平台支付流程

流程:支付平台功能申请 -> manifest.json 里配置支付参数 -> uni-app 里调用 API 进行支付

二、支付宝App支付功能申请

登录支付宝账号,创建应用接入支付宝App支付能力,包括以下步骤:

  1. 创建应用(获取appid)
  2. 开通App支付功能
  3. 配置密钥(获取公钥、私钥)

具体可参考支付宝官方文档: App支付快速接入

三、在uni-app中manifest.json中:App SDK配置支付

  1. manifest.json - App模块权限选择 中勾选 payment(支付)
  2. manifest.json - App SDK配置 中,勾选需要的支付平台,目前有微信支付、支付宝支付、苹果应用内支付(IAP),其中微信支付需要填写从微信开放平台获取的AppID
    在这里插入图片描述
  3. 这些配置需要打包生效,真机运行仍然是HBuilder基座的设置,可使用自定义基座调试。离线打包请参考离线打包文档在原生工程中配置。
  4. 配置并打包后,通过uni.getProvider可以得到配置的结果列表,注意这里返回的是manifest配置的,与手机端是否安装微信、支付宝无关。

如果手机端未安装支付宝,调用时会启动支付宝的wap页面登陆,如果已安装相应客户端,会启动其客户端登陆。

在uni-app中manifest.json中:源码视图配置
在这里插入图片描述
在这里插入图片描述

//支付宝支付
uni.getProvider({
	service:'payment'	,//获取服务供应商
	success:(res)=>{
		console.log(res.service);	//服务类型:payment
		console.log(res.provider);	//不同服务类型下可能的取值:["alipay","wxpay"]
		if(res.provider.indexOf('alipay') != -1){
			//服务提供商(从服务供应商中获取,是否包含支付宝支付)
			//调取后台接口,获取支付宝支付的订单号
			this.$Z.post(this.$url+'/UserOrderNumber',{
				//你要传给后台的参数(具体看后台要什么参数)
			},{}).then(res=>{
				console.log('支付宝订单号',res)
				//从后台获取的宝支付的订单号
				let orderData = res.data.orderNumber
				//调取后台接口,获取支付宝支付的订单数据
				this.$Z.post(this.$url+'/pay/GroupPay',{
					//把订单号与支付方式传给后台(具体看后台要什么参数)
				},{}).then(res=>{
					let orderInfo = res.data;	//从后台返回的支付宝订单数据
					//统一各平台的客户端支付API
					uni.requestPayment({
					    provider: 'alipay',	//服务提供商(支付宝)(服务提供商,通过uni.getProvider获取)
					    orderInfo: orderInfo, //后台返回的支付宝订单数据
					    success(res){
					        console.log('success:' + JSON.stringify(res));
					    },
					    fail(err){
					        console.log('fail:' + JSON.stringify(err));
					    }
					});
				})
			})
		}
	}
})

上述代码中调取接口方式this.$Z.post()是小编封装好的,详情请参考小编之前文章:uni-app中调取接口的三种方式与封装uni.request()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值