支付宝小程序(支付、uni-app不支持常用的API)
1.支付能力
a.开发步骤:
1.登录开发中心,选择相应的小程序,进入该小程序详情页
2.在小程序详情开发管理页面的 功能列表 中,点击右上角 添加功能 按钮,添加【小程序支付】功能,提交进入审核,通过后即生效
3.后端配置数据,生成私钥以及公钥,并配置数据库,具体详见【https://opendocs.alipay.com/mini/quick-example/payment#后端开发】
4.前端发起支付
支付时需要验证是否登录
未登录步骤: 获取用户授权、获取用户信息、获取登录用户的支付历史记录
已登录步骤: 获取用户授权、创建交易订单、发起支付、根据tradeNo更新列表数据
退款步骤: 查找当前退款项、发起支付、根据tradeNo更新列表数据
b.示例:
需要企业支付宝账号(https://opendocs.alipay.com/mini/quick-example/payment#简介)
c.支付接入花呗分期:
开发者在 alipay.trade.create (统一收单交易创建接口接口)中传入对应的参数即可【https://opendocs.alipay.com/apis/api_1/alipay.trade.create/】
分为:标准模式、单通道模式 (具体在花呗分期中解释)
2.花呗分期
a.登录开放后台 - 后台管理 - 版本管理的【能力列表】部分点击添加能力 - 勾选【花呗分期】 - 确定 - 签约 - 审核通过即可生效
b.小程序支持以下两种模式接入:
标准收银台模式: 无需额外签约花呗分期,且无需进行额外的花呗分期参数的透传开发工作
单通道模式: 开发者需要将花呗分期参数传入到 extend_params 中("extend_params":{"hb_fq_num":"3","hb_fq_seller_percent":"100"})
c.插件【一般需要订购、0.60 或以上的 IDE 才能编译构建、基础库版本大于 1.18.0】:
使用插件前,使用者需要在 app.json 中声明花呗的插件
无需下载插件源码,其中插件 ID 为固定值,不可改变
3.uni-app 【不支持】 支付宝小程序常用API
uni.arrayBufferToBase64(arrayBuffer)
uni.base64ToArrayBuffer(base64)
页面生命周期: onResize
应用级事件: uni.onPageNotFound、uni.onError、uni.offPageNotFound、uni.offError
发起请求: 仅支持 get/post,其他均不支持
上传下载: uni.uploadFile 参数: fileType 【支付宝小程序必填】 files、file不支持
文件:uni.chooseFile 、wx.chooseMessageFile
键盘: uni.onKeyboardHeightChange、uni.getSelectedTextRange(获取输入框光标位置)
模态框: uni.showToast(icon的loading不支持)、uni.showLoading(mask不支持)、uni.hideLoading(color设置不支持)
导航条: uni.hideHomeButton
背景: uni.setBackgroundColor、uni.setBackgroundTextStyle
窗口尺寸变化不支持
canvas绘画: uni.canvasToTempFilePath
登录: uni.checkSession
分享: uni.share、onShareAppMessage、uni.hideShareMenu(1.17.0+)
录音: uni.getRecorderManager、 uni.getBackgroundAudioManager、uni.createInnerAudioContext(1.23.4+)
视频: uni.chooseMedia、uni.getVideoInfo、uni.createVideoContext(基础库版本>=1.10.0)