更新记录
1.0.1(2026-05-09)
明晰文档内容~
1.0.0(2026-05-09)
支付宝登录授权与支付功能更新~
平台兼容性
uni-app(5.0)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | √ | √ | √ |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
uni-app x(5.0)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
z-alipay-kit 支付宝支付与授权登录 UTS 插件
1. 简介
本插件是基于 UTS (uni-app Typescript Service) 开发的支付宝原生 SDK 高级集成方案。深度封装了支付宝移动端 SDK 的核心能力,原生支持 Android、iOS 及 HarmonyOS (鸿蒙 Next)。
2. 核心功能
- 三端参数全兼容:Android、iOS、HarmonyOS 共享同一套服务端签名后的入参格式,后端无需二次开发。
- 正规化判定:严格遵循支付宝官方校验逻辑(
resultStatus: 9000+resultCode: 200)。 - 全自动回调:iOS 端支持
UTSiOSHookProxy自动拦截跳转,无需修改 AppDelegate。 - 数据自动化清洗:插件内部自动解析 SDK 返回的复杂字符串,直接吐出
authCode。
3. 参数构造说明 (重要)
本插件接收的 orderString (支付) 或 authInfo (授权) 必须是经过服务端签名后的格式。
3.1 支付参数 (orderString)
- 来源:调用支付宝
alipay.trade.app.pay接口生成。 - 格式:
app_id=xxxx&method=alipay.trade.app.pay&...&sign=... - 参考:App 支付请求参数说明
3.2 授权参数 (authInfo) - 【平台差异】
注意:授权登录参数在鸿蒙端与 Android/iOS 格式完全不同!
-
Android / iOS 平台: 采用完整版 SDK 协议串格式。
- 格式示例:
apiname=com.alipay.account.auth&app_id=xxxx&app_name=mc&auth_type=AUTHACCOUNT&biz_type=openservice&method=alipay.open.auth.sdk.code.get&pid=xxxx&product_id=APP_FAST_LOGIN&scope=kuaijie&sign_type=RSA2&target_id=xxxx&sign=... - 官方参考:App 授权请求参数
- 格式示例:
-
HarmonyOS (鸿蒙 Next) 平台: 采用极简版 OAuth 链路,必须以 https 链接开头。
- 格式示例:
https://authweb.alipay.com/auth?auth_type=PURE_OAUTH_SDK&app_id=xxxx&scope=kuaijie&state=xxxx - 官方参考:鸿蒙 Next 授权参数说明
- 格式示例:
💡 平台开发提示:由于参数格式不同,建议后端根据请求头(User-Agent)或前端传参来下发不同格式的授权字符串。支付参数(orderString)则保持三端一致,无需特殊处理。
4. 使用示例
4.1 授权登录示例
import { aliLogin } from '@/uni_modules/z-alipay-kit';
function handleAlipayLogin() {
const scheme = 'your-app-scheme'; // 对应 manifest.json 中的配置
const authInfo = '...'; // 从后端获取的授权字符串
aliLogin(authInfo, scheme, (res) => {
if (res.success) {
console.log("授权成功,AuthCode 为:", res.authCode);
// 接下来将 res.authCode 发给后端换取用户信息
} else {
console.log("授权失败:", res.memo || "用户取消或系统异常");
}
});
}
4.2 支付示例
import { aliPay } from '@/uni_modules/z-alipay-kit';
function handleAlipayPay() {
const scheme = 'your-app-scheme'; // 对应 manifest.json 中的配置
const orderString = '...'; // 从后端获取的已签名订单字符串
aliPay(orderString, scheme, (res) => {
if (res.success) {
console.log("支付成功!");
// 建议此时去后端查询订单状态以确认最终结果
} else {
console.log("支付失败,状态码:", res.resultStatus, "提示:", res.memo);
}
});
}
5. 返回结果说明 (AliResult)
| 参数 | 类型 | 说明 |
|---|---|---|
| success | boolean |
核心判断依据。仅当状态码 9000 且业务码 200 时为 true |
| resultStatus | string |
SDK 状态码(9000:成功, 4000:异常, 6001:取消...) |
| resultCode | string |
业务结果码(200:业务处理成功) |
| authCode | string |
自动解析好的授权码(仅授权成功时有值) |
| result | string |
支付宝返回的原始结果数据 |
| memo | string |
提示信息 |
6. 配置与安装
- URL Schemes: 在
manifest.json中配置好各平台的跳转 Scheme。
7. 注意事项
- 真机运行:由于涉及原生 SDK,必须使用 自定义基座 进行调试。

收藏人数:
购买源码授权版(
试用
赞赏(0)
下载 29
赞赏 0
下载 11838582
赞赏 1911
赞赏
京公网安备:11010802035340号