微信获取手机号提示该appid没有权限
前言:
在做获取用户手机号的时候遇到的,wx.login这个方法调用以后,直接失败,提示我没有权限,然后查了资料才知道是 个人账户是没有权限的,只有企业用户可以
报错信息(摘自百度图)
相关资料:(官网入口)
获取手机号
获取微信用户绑定的手机号,需先调用wx.login接口。
因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 button 组件的点击来触发。
注意:目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限。
使用方法
需要将 button 组件 open-type
的值设置为 getPhoneNumber
,当用户点击并同意之后,可以通过 bindgetphonenumber
事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key
以及 app_id
进行解密获取手机号。
注意
在回调中调用 wx.login 登录,可能会刷新登录态。此时服务器使用 code 换取的 sessionKey 不是加密时使用的 sessionKey,导致解密失败。建议开发者提前进行 login
;或者在回调中先使用 checkSession
进行登录态检查,避免 login
刷新登录态。
代码示例
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
Page({getPhoneNumber (e) {console.log(e.detail.errMsg)console.log(e.detail.iv)console.log(e.detail.encryptedData)}
})
返回参数说明
参数 | 类型 | 说明 | 最低版本 |
---|---|---|---|
encryptedData | String | 包括敏感数据在内的完整用户信息的加密数据,详细见加密数据解密算法 | |
iv | String | 加密算法的初始向量,详细见加密数据解密算法 | |
cloudID | string | 敏感数据对应的云 ID,开通云开发的小程序才会返回,可通过云调用直接获取开放数据,详细见云调用直接获取开放数据 | 基础库 2.8.0 |
获取得到的开放数据为以下 json 结构:
{"phoneNumber": "13580006666","purePhoneNumber": "13580006666","countryCode": "86","watermark":{"appid":"APPID","timestamp": TIMESTAMP}
}
参数 | 类型 | 说明 |
---|---|---|
phoneNumber | String | 用户绑定的手机号(国外手机号会有区号) |
purePhoneNumber | String | 没有区号的手机号 |
countryCode | String | 区号 |
微信获取手机号提示该appid没有权限相关推荐
- uniapp 微信小程序 getPhoneNumber 获取手机号 提示 appid没有权限
appid没有权限 问题出现原因,当前小程序账号没有进行"微信认证" 登录微信小程序后台,可以查看到当前小程序的基本信息. 微信小程序授权获取手机号接口 因为需要用户主动触发才能发 ...
- uni-app微信获取手机号,第一次解密总是失败
项目场景: uni-app; 获取code,后台解密手机号 问题描述: 每次第一次登陆,后台都会解密失败 原因分析: code获取错误:导致后台的解密key与code不对应 解决方案: 小程序获取手机 ...
- 小程序~获取手机号getPhoneNumber提示该appid没有权限
处理思路 (1)小程序是不是企业主体 (2)有没有进行认证 (3)如果没有 是不可以获取用户手机号码的 . 转载于:https://www.cnblogs.com/jianxian/p/1111006 ...
- 微信小程序登录-手机号授权并获取手机号
做微信小程序时,记录实现微信小程序登录 这里已经获取用户openId和sessionKey 1.通过按钮触发手机号授权 必须要通过按钮触发授权,open-type='getPhoneNumber'不能 ...
- 微信小程序获取手机号登录流程
微信小程序获取手机号登录流程 首先前端使用wx.login 获取code wx.login({success(res) {if (res.code) {that.setData({code: res. ...
- 企业微信获取客户群里用户的unionid;企业微信获取客户详情
企业微信获取客户群里用户的unionid:企业微信获取客户详情 提示:企业微信获取客户群里用户的unionid其实是通过获取客户详情的接口 文章目录 企业微信获取客户群里用户的unionid:企业微信 ...
- 微信小程序开发提示“获取手机号码失败 ERROR:该appid没有权限”解决方案
关于微信小程序开发提示"获取手机号码失败, ERROR:该appid没有权限"的解决方案 一般这种情况的出现都是出现在二次开发上面,原开发人员变动,不在开发该程序.新人在接手这个程 ...
- uni-app微信小程序获取手机号;微信小程序获取手机号,获取到后需要进行解密;微信小程序获取手机号失败 Error:该appId没有权限
方法1.uni-app登录加获取手机号解密-直接看此篇即可解决 微信小程序获取手机号注意点: 1.需要先登录,微信小程序登录看这篇 2.手机号获取到时加密的,需要后端解密或者前端自己解密(解密时候就会 ...
- 微信小程序——按钮登录获取用户头像昵称、不需要获取权限就能显示头像和昵称、获取手机号(云端)
1.登录获取用户头像昵称 代码 app.js App({globalData: {userInfo: null},onLaunch() {} }) . . . index.js const app = ...
最新文章
- 七月在线数据结构视频教程一
- 算法--06年华为面试:求两个数组的最小差值(Java实现)
- CSS---内外边距
- Android组件的通讯-Intent
- SAP Spartacus 如何连接到其他系统
- 小程序自带git方法提交时文件冲突的解决
- html打开时按钮自动触发事件,html在用户按下按键时触发的事件属性onkeydown
- android uboot获取mac地址,uboot生成随机的MAC地址
- User Agent跨站攻击
- Microsoft Office (2007) Open XML 文件格式
- @PropertySource注解获取配置文件值
- Java Jad 反编译class文件
- 企企通SRM:时尚服装品牌企业建立优质供应链体系,只需要做到这几步
- 手把手教你写让人眼前一亮的软件测试简历,收不到面试邀请算我输
- 戴尔刀片服务器运行风扇一直超速转动解决
- 统计学理论—假设检验
- linux 网络配置 nm_controlled,LINUX centos7.6修改静态IP与配置参数NM_CONTROLLED
- 无法定位程序输入点 getHostNameW 于动态链接库 WS2_32.dll
- 第十三届蓝桥杯c++b组国赛决赛
- LeetCode 461. 汉明距离 (布赖恩·克尼根算法)
热门文章
- notepad批量删除html元素,Notepad文本编辑器怎么快速删除一整行内容?
- 用品牌名吸引流量的“四三二一”法则
- 不服不行!狂刷1个月Java面试题,知乎上已获万赞
- pc分布使用率情况_如何在不违反法律的情况下获得廉价和免费的PC游戏
- 设置webhook_设置WebHook
- 中国电商现状 以及未来发展趋势
- MyBatis:缓存机制详解
- Adobe Photoshop Elements 2020官网下载
- WIN7系统安装mysql8超详细教程
- 网络通信——下载管理器DownloadManager——主动轮询当前的下载进度