虽然uni-app已经为我们封装好了一个统一的API,所以在uni-app中我们只需要调用uni.requestPayment即可。但是uni-app官方文档的散乱看起来也挺头疼的。这里我精简整个流程,并对自己开发时碰到问题做个总结。
需要注意的是,支付模块的开发不仅仅是需要客户端的开发,还需要服务端的开发。这里是在保证服务端的配置正确的前提下,对于前端uni-app的开发与配置指南。
这里有必要说明一下,申请微信支付流程对于初次申请者会感觉有些混乱,如果不理清相应关系可能会在各种平台找来找去。
对于APP,要在微信开放平台( https://open.weixin.qq.com )注册申请账号。注这里公司使用需300元认证费。在应用详情中申请开通微信支付功能。
当审核都通过了,就可以获取到应用ID(APPID,即类似于个人ID一样,唯一标识)
有了以上基础,申请微信商户平台( https://pay.weixin.qq.com ),注册申请账号。之后只需关联AppID,即可。
无需配置,只需保证微信小程序配置即可。
在manifest.json文件“App模块配置”项的“Payment(支付)”下,勾选“微信支付”项
调用 [uni.requestPayment(OBJECT)]发起支付,OBJECT参数中provider属性值固定为 wxpay 、
这里 的timeStamp, nonceStr, package, signType, paySign是由后端与微信交互生成的,值得注意的是package,微信直传过来的值是packageValue。
这里是orderInfo,该属性值为订单对象。依然值得注意的是package,微信直传过来的值是packageValue。
partnerid,微信传过来的是partnerId。
prepayid,微信传过来是prepayId。
noncestr,微信传过来的是nonceStr。
timestamp,微信传过来的是timeStamp。
这里一定一定要注意大小写,不然订单请求失败,让你找问题,找到痛不欲生。
至此,微信小程序已经可以正常支付了。而APP则需要打包才可以。uni-app有两种打包方式,一个是提交云端打包,一个是本地离线打包。这里说下离线打包的相关配置和问题。
关于离线打包我会单独出一篇,这里不在讲解。只进行微信支付相关配置讲解。
在uni-app官方提供的App离线SDK中有一个打包工程,如果想使用微信支付,就需要添加相应的依赖库以及资源,这点我就很怀念cocopods,方便太多了。
注意:SDK 中的
1.在URL Types 中添加配置: identifier 填写 weixin ,URL Schemes 填写 wx[后面是您在微信平台申请的appkey] ,如果没有该项按照图中的格式创建。注意 wx 这两个字母必须添加。
uniapp中付款按钮是保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面。
前端中的input类标签中的radio和checkbox前面的选框的样式是不能改变的,但是这往往会造成我们在用起来时候样式的局限性,以下是改变样式的方法:隐藏默认样式。
uniapp运行环境:
运行uni-app项目需要安装HBuilderX前端开发工具。
浏览器运行:进入uniapp项目,点击工具栏的运行-运行到浏览器-选择浏览器,即可在浏览器里面体验uni-app 的 H5 版。
真机运行:连接手机,开启USB调试,进入uniapp项目,点击工具栏的运行-真机运行-选择运行的设备,即可在该设备里面体验uni-app。
在微信开发者工具里运行:进入uniapp项目,点击工具栏的运行-运行到小程序模拟器-微信开发者工具,即可在微信开发者工具里面体验uni-app。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)