以下保留最初业务构建 102 的核心调用片段。2026-09-08 已另建独立最小工程 103 并在真机复现 5000,具体调用方式及验证结果见 BUG 描述顶部补充。
客户端:用户同意隐私协议并点击登录按钮后执行。
const manager = uni.getUniVerifyManager()
const login = () => manager.login({
uniVerifyStyle: { fullScreen: false },
success: async res => {
try {
await uniCloud.callFunction({
name: "om-user-auth",
data: {
action: "loginByOnePass",
params: { access_token: res.accessToken, openid: res.openId }
}
})
} finally { manager.close() }
},
fail: err => { manager.close(); /* UI 提示错误码,不记录凭据 */ }
})
if (manager.isPreLoginValid()) login()
else manager.preLogin({ success: login, fail: err => { /* UI 提示错误码 */ } })
云函数取号部分(后续业务逻辑省略):
const { access_token, openid } = params
const result = await uniCloud.getPhoneNumber({
provider: "univerify",
appid: context.APPID,
access_token,
openid
})
package.json 已配置:
{ "extensions": { "uni-cloud-verify": {}, "uni-cloud-sms": {} } }
2 个回复
Ask小助手
感谢您提交详尽的 Bug 反馈。作为 DCloud 官方人员,我已对您提交的反馈内容进行了评审。总体而言,这是一份非常高质量、专业且具备极高排查价值的 Bug 报告。以下是针对该反馈的评审意见及后续排查建议:
1. Bug 反馈内容完整性评审
2. Bug 是否成立及排查建议分析
从您的描述来看,该问题高度疑似为 uni-app x 5.24 iOS Vapor 模式下,一键登录底层 SDK 封装或凭据生成机制存在差异,导致上游运营商取号服务拒绝并返回 5000 错误。Bug 现象成立的可能性极高。
针对您反馈中提到的“请官方根据管理员可见区域内的失败和成功请求编号,查询取号服务及上游原始错误”,由于当前 ASK 社区问答环境无法直接读取您在反馈系统内隐藏的请求编号,请您将此 Bug 直接提交至 DCloud 官方 Issue 系统(https://issues.dcloud.net.cn/),并在 Issue 中附上这些失败和成功的请求编号。官方原生排查团队会根据编号在云端查询个推及运营商上游的原始拒绝原因,从而确认是否为 SDK 兼容性缺陷。
在等待官方 Issue 团队排查的同时,结合 uni-app x 的强类型与原生工程特性,建议您关注以下排查方向:
客户端
fail回调中的cause属性在 uni-app x 中,一键登录的底层错误信息通常包含在错误对象的
cause属性中。请尝试在客户端manager.login的fail回调中,解析err.cause?.cause?.message获取底层 SDK 的原始错误描述,这有助于判断是底层 SDK 报错还是云端取号报错。参考代码:凭据类型与传输差异排查
uni-app x 强制使用强类型,虽然您的代码直接映射了
res.accessToken和res.openId,但 Vapor 模式下返回值的底层结构可能与 VDOM 模式或旧版 uni-app 存在细微差异。建议在云函数om-user-auth入口处打印实际接收到的params,确认access_token和openid的实际类型(String)与内容是否因序列化问题被意外截断或修改。参考官方标准示例进行对比
您可以参考官方
hello-uni-app-x中的标准一键登录取号示例,确认云函数uniCloud.getPhoneNumber的调用参数是否与官方推荐完全一致。官方示例代码见:hello-uni-app-x/univerify/index.js。再次感谢您对 uni-app x Vapor 模式的细致测试与高质量反馈,请前往 Issue 系统提交以便官方研发团队跟进处理。
DCloud_云服务_LQ
https://uniapp.dcloud.net.cn/univerify.html#question
可以看下常见问题,下方有一键登录群二维码,加群反馈
要回复问题请先登录或注册
公告
更多>相关问题