uni-app app平台支付宝支付
一、App平台支付流程
流程:支付平台功能申请 -> manifest.json 里配置支付参数 -> uni-app 里调用 API 进行支付
二、支付宝App支付功能申请
登录支付宝账号,创建应用接入支付宝App支付能力,包括以下步骤:
- 创建应用(获取appid)
- 开通App支付功能
- 配置密钥(获取公钥、私钥)
具体可参考支付宝官方文档: App支付快速接入
三、在uni-app中manifest.json中:App SDK配置支付
- 在
manifest.json - App模块权限选择中勾选 payment(支付) - 在
manifest.json - App SDK配置中,勾选需要的支付平台,目前有微信支付、支付宝支付、苹果应用内支付(IAP),其中微信支付需要填写从微信开放平台获取的AppID

- 这些配置需要打包生效,真机运行仍然是HBuilder基座的设置,可使用自定义基座调试。离线打包请参考离线打包文档在原生工程中配置。
- 配置并打包后,通过uni.getProvider可以得到配置的结果列表,注意这里返回的是manifest配置的,与手机端是否安装微信、支付宝无关。
如果手机端未安装支付宝,调用时会启动支付宝的wap页面登陆,如果已安装相应客户端,会启动其客户端登陆。
在uni-app中manifest.json中:源码视图配置


//支付宝支付
uni.getProvider({service:'payment' ,//获取服务供应商success:(res)=>{console.log(res.service); //服务类型:paymentconsole.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; //从后台返回的支付宝订单数据//统一各平台的客户端支付APIuni.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()
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
