微信小程序已完成认证仍提示appid无权限获取手机号如何解决
微信小程序获取手机号报错
The appid has no permission 排查解决方案 报错说明:已完成主体认证的微信小程序,调用获取用户手机号接口时触发该错误,提示无接口调用权限。
- 检查「获取用户手机号」接口开通状态
登录微信公众平台小程序后台,进入「开发」→「开发管理」→「接口设置」页,找到「获取用户手机号」接口,确认是否已提交申请并通过审核。该接口仅对非个人主体小程序开放,且需要匹配平台要求的经营类目,即使完成主体认证,没有单独申请开通该接口也会触发无权限报错。 - 校验调用使用的AppID一致性
确认代码中配置的AppID、云开发环境绑定的AppID,和已开通接口权限的小程序AppID完全一致,避免混用测试、正式账号的AppID导致权限不匹配。 - 检查接口调用规范是否符合要求
目前微信小程序获取手机号需用户主动触发open-type="getPhoneNumber"的按钮组件,拿到前端返回的code后,再调用服务端auth.getPhoneNumber接口兑换手机号信息,不支持静默调用。如果是云调用场景,需确认云函数已配置对应接口的权限声明。 - 验证权限生效状态
刚完成接口开通申请后,平台侧权限生效最多有10分钟延迟,可等待一段时间后清理开发者工具缓存、重新编译项目再测试。 - 排查账号主体是否有异常
进入微信公众平台「通知中心」查看是否有违规处罚通知,若小程序存在违规记录,平台可能会收回对应接口的调用权限,需先完成违规整改后重新申请接口权限。
内容的提问来源于stack exchange,提问作者Oshini
相关产品推荐
相关产品推荐

