位置: IT常识 - 正文

uniapp实现微信支付、支付宝支付(uniapph5微信支付)

编辑:rootadmin
uniapp实现微信支付、支付宝支付 前言:

推荐整理分享uniapp实现微信支付、支付宝支付(uniapph5微信支付),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp调用支付,uniapp微信小程序微信支付,uniapp小程序支付功能,uniapp实现微信支付,uniapp实现微信支付,uniapp实现微信支付的前端步骤,uniapph5微信支付,uniapp实现微信支付,内容如对您有帮助,希望把文章链接给更多的朋友!

本文只介绍了代码片段,如果需要支付前准备的流程可以继续浏览查找(狗头)

该方法是开发uniapp时使用的,未涉及5+APP

前端部分并不复杂,只是有些流程步骤有些杂乱,正常都是后端去和微信交互。前端只需要将每个参数对应的填好,发送请求即可。

微信支付:

一、配置manifest中的微信支付,填写对应微信开放平台申请应用的AppID值

二、发送请求获取appid、partnerid、prepayid、package、noncestr、timestamp、sign等值,这些都是后端与微信交互产生的,调用接口传入后端需要的参数获取就好了。

三、获取到对应的参数值后,就可以使用uniapp官方的api请求进行支付了。

具体操作和代码如下:

一、manifest中的配置

 

 二、代码:(可自行优化方法,文中有点冗杂)

import { wxPay } from '../../api/api.js';......testWxPay() {const data = {joinType: **,name: "***",totalAmount: *} // 这个是后端给我的接口,我统一写在了管理api的js文件中wxPay(data).then(res => {uni.hideLoading()console.log(res, "测试微信支付的res")this.wxParams = res.info.responseData.app_response//订单对象,从服务器获取var orderInfos = {"appid": this.wxParams.appid, // 应用ID(AppID)"partnerid": this.wxParams.partnerid, // 商户号(PartnerID)"prepayid": this.wxParams.prepayid, // 预支付交易会话ID"package": this.wxParams.package, // 固定值"noncestr": this.wxParams.noncestr, // 随机字符串"timestamp": this.wxParams.timestamp, // 时间戳(单位:秒)"sign": this.wxParams.sign, // 签名,这里用的 MD5 签名};console.log(this.wxParams, "this.wxParams")console.log(orderInfos, "orderInfos") // uniapp官方的Api,可直接到官网搜索查询uni.requestPayment({provider: "wxpay",orderInfo: orderInfos,success(res) {console.log('success:' + JSON.stringify(res));console.log("微信支付成功");},fail(err) {console.log('fail:' + JSON.stringify(err));console.log("微信支付失败");}});}).catch(err => {uni.hideLoading()console.log(err, "测试微信支付err")})},支付宝支付:

注意:

支付宝支付没有包名和签名的限制,可以使用标准基座开发测试uniapp使用支付宝支付无法调起支付宝原因有可能是targetSdkVersion大于或等于30的原因,我改成28后可以正常调起了,这样的解决方式有可能会和其他引入的插件产生冲突uniapp实现微信支付、支付宝支付(uniapph5微信支付)

一、配置manifest中的支付宝支付

二、发送请求获取支付宝订单数据,

三、获取到支付宝订单数据后,就可以使用uniapp官方的api请求进行支付了。

一:manifest中的配置

二:代码片段:

import { aliPay } from '../../api/api.js';......testAliPay() {const data = {joinType: ***,name: "***",totalAmount: *} // 后端给的接口,传参调用即可aliPay(data).then(res => {uni.hideLoading()//订单对象,从服务器获取var orderStr = res.orderStringconsole.log(orderStr, "orderStr")//订单对象,从服务器获取 // uniapp官方Api,直接调用,传入参数uni.requestPayment({provider: 'alipay',orderInfo: orderStr, //支付宝订单数据success: function(res) {console.log('success:' + JSON.stringify(res));},fail: function(err) {console.log('fail:' + JSON.stringify(err));}});}).catch(err => {uni.hideLoading()console.log(err, "试支付宝支付err")})},结尾: 

到这里就要和大家说再见啦ꈍ◡ꈍ !

如果大家有流程配置的需要的话,可以移步其他参考资料:

微信支付:

uni.requestPayment(OBJECT) | uni-app官网

uniapp支付之微信支付 - 简书

支付宝支付:

uni.requestPayment(OBJECT) | uni-app官网

uniapp支付之支付宝APP支付 - 简书

支付宝无法唤起:uniapp集成支付宝支付无法唤起支付宝客户端 - 简书

本文链接地址:https://www.jiuchutong.com/zhishi/294565.html 转载请保留说明!

上一篇:Vue中二级菜单的实现(vue二级菜单的隐藏与显示)

下一篇:html中插入svg(svg如何嵌入html5)

  • 630打印机怎么换色带(630打印机怎么换墨盒)

  • 遥控器指示灯一直亮 用不了怎么办(遥控器指示灯一直闪烁 按键没反应)

  • 微信通话怎么隐藏悬浮窗(微信通话怎么隐藏悬浮)

  • ipad卡了怎么重启(ipad变卡了咋办)

  • 电脑屏幕中间出现一条线怎么办(电脑屏幕中间出现一条横线怎么回事)

  • oppok5怎么没有微信视频美颜(oppo手机没有微信图标怎么办)

  • 华为nova支持无线充电吗(华为nova支持无线投屏吗)

  • 华为黑屏充电也没反应(华为黑屏充电也没反应无法强制开机)

  • 微信群里发消息看不到(微信群里发消息怎么撤回超过2分钟)

  • 为什么抢票二十天都没抢到票(为什么抢票的时候票一下就没了?)

  • 绿钻下载的音乐是永久的吗(绿钻下载的音乐怎么改格式)

  • 怎么使用uc看小电影(uc看的)

  • 美图秀秀怎么改照片大小(美图秀秀怎么改照片背景底色)

  • 云闪付是什么(云闪付是什么时候可以在淘宝里用云闪付可以付款的)

  • 在国外可以用微信转账吗(在国外可以用微博吗)

  • 怎么调整wps表格边距(怎么调整wps表格的行高和列宽)

  • nova4e上市时间(nova4e上市时间年月日)

  • 手机qq咋解除转发权限(qq取消转账)

  • 阿里巴巴如何一件代发(阿里巴巴如何一件代发到快手)

  • 美团如何删除收货地址(美团如何删除收货人信息)

  • 快手小黄车闪退(快手小黄车闪退怎么解决)

  • iphone8plus触屏失灵(iphone8p触屏不灵)

  • 最快网速的国家是哪里(网速第一的国家)

  • vue3 Element Plus按钮点击之后颜色不会还原的解决方案(element ui vue 3)

  • 性能优化必备——火焰图(性能优化模式)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络