微信小程序如何通过用户授权获取手机号(getPhoneNumber)


Posted in Javascript onJanuary 21, 2020

这篇文章主要介绍了微信小程序如何通过用户授权获取手机号(getPhoneNumber),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

小程序有一个获取用户很便捷的api,就是通过getPhoneNumber获取用户的已经绑定微信的手机号码。有一点要大家注意,现在微信和注重用户体验,有些方法都是需要用户主动去触发才能调用的,比如getPhoneNumber。

官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getPhoneNumber.html

实现思路:

微信小程序如何通过用户授权获取手机号(getPhoneNumber)

直接上干货:

1、

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>

2、JS内getPhoneNumbe组件函数(该事件中最重要的就是在wx.login登录后发起接口请求),这里需要配置参数来给接口:

这些是必不可少的参数,这些齐备才能算一个合法的请求。

appid: “你的小程序APPID”,
secret: “你的小程序appsecret”,
code: res.code,
encryptedData: telObj,
iv: ivObj
//通过绑定手机号登录
getPhoneNumber: function (e) {
   var ivObj = e.detail.iv
   var telObj = e.detail.encryptedData
   var codeObj = "";
   var that = this;
   //------执行Login---------
   wx.login({
    success: res => {
     console.log('code转换', res.code);
 



//用code传给服务器调换session_key
     wx.request({
      url: 'https://你的接口文件路径', //接口地址
      data: {
       appid: "你的小程序APPID",
       secret: "你的小程序appsecret",
       code: res.code,
       encryptedData: telObj,
       iv: ivObj
      },
      success: function (res) {
       phoneObj = res.data.phoneNumber;
       console.log("手机号=", phoneObj)
       wx.setStorage({  //存储数据并准备发送给下一页使用
        key: "phoneObj",
        data: res.data.phoneNumber,
       })
      }
     })
 
     //-----------------是否授权,授权通过进入主页面,授权拒绝则停留在登陆界面
     if (e.detail.errMsg == 'getPhoneNumber:user deny') { //用户点击拒绝
      wx.navigateTo({
       url: '../index/index',
      })
     } else { //允许授权执行跳转
      wx.navigateTo({
       url: '../test/test',
      })
     }
    }
   });
},

最终结果展示:

微信小程序如何通过用户授权获取手机号(getPhoneNumber)

点击"拒绝",开发者能捕捉到该事件 ,此时getPhoneNumber 函数返回 e.detail.errMsg 为 getPhoneNumber:user deny

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
将查询条件的input、select清空
Jan 14 Javascript
使用iframe window的scroll方法控制iframe页面滚动
Mar 05 Javascript
html文档中的location对象属性理解及常见的用法
Aug 13 Javascript
学习Javascript面向对象编程之封装
Feb 23 Javascript
JS中LocalStorage与SessionStorage五种循序渐进的使用方法
Jul 12 Javascript
五步轻松实现zTree的使用
Nov 01 Javascript
JavaScript满天星导航栏实现方法
Mar 08 Javascript
Vue infinite update loop的问题解决
Apr 23 Javascript
vue实现全屏滚动效果(非fullpage.js)
Mar 07 Javascript
JS函数参数的传递与同名参数实例分析
Mar 16 Javascript
最全vue的vue-amap使用高德地图插件画多边形范围的示例代码
Jul 17 Javascript
vue v-for出来的列表,点击某个li使得当前被点击的li字体变红操作
Jul 17 Javascript
微信小程序如何实现精确的日期时间选择器
Jan 21 #Javascript
微信小程序如何实现点击图片放大功能
Jan 21 #Javascript
微信小程序修改checkbox的样式代码实例
Jan 21 #Javascript
微信小程序全选多选效果实现代码解析
Jan 21 #Javascript
js判断在哪个浏览器打开项目的方法
Jan 21 #Javascript
浅谈Vue.use到底是什么鬼
Jan 21 #Javascript
ant-design-vue 快速避坑指南(推荐)
Jan 21 #Javascript
You might like
PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
2011/12/16 PHP
php获取当月最后一天函数分享
2015/02/02 PHP
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
PHP实现的常规正则验证helper公共类完整实例
2017/04/27 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
PHP实现的curl批量请求操作示例
2018/06/06 PHP
解决laravel(5.5)访问public报错的问题
2019/10/12 PHP
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
JavaScript调用堆栈及setTimeout使用方法深入剖析
2013/02/16 Javascript
javascript弹出层输入框(示例代码)
2013/12/11 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
Js控制滑轮左右滑动实例
2015/02/13 Javascript
JavaScript用select实现日期控件
2015/07/17 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
基于jQuery实现仿百度首页选项卡切换效果
2016/05/29 Javascript
jQuery实现自动输入email、时间和域名的方法
2016/08/24 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
2017/01/24 Javascript
AngularJS实现的锚点楼层跳转功能示例
2018/01/02 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
2018/01/20 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
VUE v-model表单数据双向绑定完整示例
2019/01/21 Javascript
JavaScript Blob对象原理及用法详解
2020/10/14 Javascript
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
Python实现在线音乐播放器
2017/03/03 Python
详解Python之数据序列化(json、pickle、shelve)
2017/03/30 Python
详解python爬虫系列之初识爬虫
2019/04/06 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
三分钟自我介绍演讲稿
2014/08/21 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
个人简历自我评价怎么写
2015/03/10 职场文书
戒赌保证书
2015/05/11 职场文书
革命电影观后感
2015/06/18 职场文书
礼貌问候语大全
2015/11/10 职场文书