一、微信原生提供的获取用户手机号并且登陆的主要步骤

  1. 调用wx.login()获得code
wx.login({success: function(res){console.log(res.code)}
})
  1. 开发者使用code在微信服务器调用接口获得openid,session_key,unionid
    (https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html)

  2. 使用手机号登录
    <button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"> </button>
    当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端(你自己的服务器)结合步骤2中获得的 session_key 以及 app_id 进行解密获取手机号。

微信处理用户登陆通常的做法:
是前端拿到code和用户加密的登陆信息传递给后端提供的解密接口,后台使用前端的code去换取该用户的唯一标识(openid)及本次登录的会话密钥(session_key)来对用户加密数据进行解密,然后获取用户手机号,同你们app中的注册用户进行关联,保证小程序中的账号和app账号想通,并通知前端用户登陆成功。

getPhoneNumber: function (e) {wx.login({success(res){wx.request({url: 'https://你的解密地址',data: {'encryptedData': encodeURIComponent(e.detail.encryptedData),'iv': e.detail.iv,'code': res.code}}),method: 'POST',header: {'content-type':'application/json'}, success: function (res) {if (res.status ==1) {//我后台设置的返回值为1是正确//存入缓存即可wx.setStorageSync('phone', res.phone);}},fail: function (err) {console.log(err);}})}})}
}

后台接口怎么解析,需要参考微信提供的方法:下载示例

参考文档 :https://blog.csdn.net/weixin_41818665/article/details/79509792

微信小程序开发---微信获取微信绑定手机号并登录流程相关推荐

  1. php网页抓取浏览者手机号码_微信小程序开发之获取用户手机号码(php接口解密)...

    后边要做一个微信小程序,并要能获取用户微信绑定的手机号码.而小程序开发文档上边提供的获取手机号码的接口(getPhoneNumber())返回的是密文,需要服务器端进行解密,但是官方提供的开发文档一如 ...

  2. 微信小程序开发提示“获取手机号码失败 ERROR:该appid没有权限”解决方案

    关于微信小程序开发提示"获取手机号码失败, ERROR:该appid没有权限"的解决方案 一般这种情况的出现都是出现在二次开发上面,原开发人员变动,不在开发该程序.新人在接手这个程 ...

  3. 基于微信小程序开发的仿微信demo

    (本文参考自github/liujians,地址:https://github.com/liujians/weApp) 作者声明: 基于微信小程序开发的仿微信demo  整合了ionic的样式库和we ...

  4. 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等

    今天2.19.3.25 在开发微信小程序时,作为测试号想清除授权缓存,一直没有找到方法, 最后无意中看到了解决方法 微信小程序开发工具 清除授权缓存/文件缓存/登录缓存等等.完美解决

  5. 视频教程-微信小程序开发培训教程-微信开发

    微信小程序开发培训教程 本人计算机专业,毕业工作已经10多年,从事过的行业有,安防,通讯,Gps定位,信息统计分析,互联网电商等,从事过的职位. 代码工程师(使用过的语言C#,PHP,Java),Ap ...

  6. 微信小程序开发:获取位置打开地图

    目录 01 准备工作 02 小程序基础知识 微信小程序的四种类型的文件 app.json app.js app.wxss app.wxml 目录树 03 获取位置打开地图 参考 效果 程序说明 04 ...

  7. 微信小程序开发语言(微信小程序开发教程)详细步骤

    微信小程序开发语言 开发微信小程序用什么语言 1.微信小程序开发所需要的语言比较特别,首先介绍一下需要使用到的文件类型大致分为:WXML(WeiXin Mark Language 微信标记语言).WX ...

  8. 微信小程序 开发 “婚礼邀请函” 微信小程序入门可看

    成品展示: 5个页面 我们来讲解哈(上面地图位置随便定的点) 1.首页开发 一开始进来显示首页  然后默认开始播放背景音乐,这个背景音乐点击右上角图标可以暂停(有动画),然后点击新郎和新娘文字可以调到 ...

  9. 微信小程序案例:获取微信访问用户的openid

    在微信开发项目中,获取openid是项目常遇的问题,本文通过主要讲解实现在微信小程序中如何获取用户的openid,案例实现非常简单 具体实现方法是通过登录接口获取登录凭证,然后通过request请求微 ...

  10. 微信小程序开发——MySQl存储微信昵称的特殊表情

    项目场景: 最近再写一个微信小程序涉及到获取用户的昵称等信息,起初的时候一切进展顺利,但测试的时候发现一个问题,我们的一位同学始终不能正常授权信息,查询数据库也没有相关的信息.刚开始认为是手机问题或者 ...

最新文章

  1. 设计模式 之美 -- 面向对象(C/C++分别实现)
  2. ubuntu 14.04 双显卡安装NVIDIA GPU驱动+CUDA+编译配置caffe
  3. pandas基于元组列表(list of tuples)、列表词典(dictionary of lists)、词典列表(list of dictionaries)构建dataframe数据实战
  4. php $s=#039;kkk#039; if($s==0),之前收集到的PHP总结笔记
  5. Linux Mint 18.2 Sonya 将于 6 月上旬发布公测版本
  6. 分布式表格系统Google Bigtable详解
  7. tensorflow-eagerAPI
  8. Android 百度地图开发(一)
  9. matlab som聚类算法,使用SOM对数据进行聚类
  10. 【C++基础】C++11的noexcept声明符 与 异常传播
  11. 新浪的股票接口 c#
  12. nohub java -jar xx.jar /dev/null 21
  13. lammps教程:NEMD方法计算热导率公式详解
  14. sony a7 android,摄影 篇一:SONY A7R4利用ftp传输直传照片到安卓设备,完爆app体验
  15. 清理git本地帐户信息
  16. PS cc 2018安装教程
  17. OpenCV实践之路——方形图片对角线切割
  18. 2020FME博客大赛——基于FME利用高德路径规划AP实现公共服务设施可达性分析——以厦门山海健康步道为例
  19. Object Detection(目标检测神文)(二)
  20. ubuntu安装eclips

热门文章

  1. 从818悟空榜看苏宁全场景零售的数据赋能
  2. 史上最全:Jetbrains全家桶31款软件 分类+功能整理收集
  3. UltraVNC 使用,内网局域网远程控制
  4. 静态资源文件无法加载导致jsp页面渲染不成功问题
  5. 读书笔记 - 《上帝的跳蚤》
  6. Spark数据分析及处理
  7. 14年macmini装双硬盘_2011中Mac Mini详尽拆解 可装两块硬盘
  8. 写在2020.11.19 周四晚上
  9. python数星星问题
  10. B Spline(B样条曲线)