微信小程序开发获取手机号(微信小程序 获取手机号)

小程序开发 2150
本篇文章给大家谈谈微信小程序开发获取手机号,以及微信小程序 获取手机号对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、微信小程序获取用户openId、手机号

本篇文章给大家谈谈微信小程序开发获取手机号,以及微信小程序 获取手机号对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

微信小程序获取用户openId、手机号

对于第一次实现小程序获取用户手机号、用户信息功能的程序猿来说,有一个着手的思路可以事半功倍。本文可以给你提供这个思路,助你快速准确完成需求。

调用wx.login,在成功回调中,拿自己小程序的appId、secret请求接口 url: ' ' + appId + 'secret=' + secret + 'js_code=' +code + 'grant_type=authorization_code',请求成功即可拿到openid和session-key

小程序的appId必须要在微信公众平台完成微信认证(里面需要上传一些企业的一些证件和信息)才能有获取用户手机号的权限

最后拿用户的获取到的e.detail.iv、和e.detail.encryptedData(加密的手机号)和前面拿到过的session-key传给后台,交给后台解密即可

具体解密规则参考官方文档:( )

微信小程序云开发获取手机号码

坑爹的baidu出来好多关于微信小程序云开发获取手机号码的例子还都是需要通过code获取sessionkey来解密信息取得手机号码,总感觉哪里不对,企鹅都说了,云开发是自动鉴权的,不应该还要解密啊。于是,试呀试呀,终于试出了正确的通过云函数获取手机号码的流程。

具体如下:

1,页面 cellphone.wxml

2,js cellphone.js

3,云函数 openapi 的index.js

全程没有code,session_key,和加密解密啥事。就是这么简单。云开发天然鉴权。用什么直接随便拿就行啊。

微信小程序模拟点击input框获取用户手机号

       最近在做一个小程序时遇到这样一个需求:要求在点击input框时获取用户的手机号还可以进行修改。但是我们都知道微信小程序获取手机号是通过button按钮的bindgetphonenumber属性来实现的,那么怎么能在input获得焦点时,获取用户手机号呢?

       首先,我们先来了解一下怎么通过button按钮来获取用户的手机号。在微信公众平台上,button按钮有一个open-type和bindgetphonenumber的属性:

           具体如下:

                1.wxml:

                    button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"输入手机号/button

                2.js

                    在这里我们需要注意首先要获取用户的openid和session_key,获取方式如下:

                        app.js:

                        wx.login({

                              //获取code

                              success: (res) = {

                                    var code = res.code; //返回code

                                    this.globalData.code = code;

                                    this.globalData.appId = 'wx5a9ded8ac4b1feb3';

                                    this.globalData.secret = '7ccbca95ddc8baf065194b533043a783';

                                    wx.request({

                                          url: '' + this.globalData.appId + 'secret=' + this.globalData.secret + 'js_code=' + code + 'grant_type=authorization_code',

                                          data: {},

                                          header: {

                                                'content-type': 'json'

                                          },

                                          success: (res) = {

                                                    var openid = res.data.openid //返回openid

                                                    this.globalData.openId = openid;

                                                    this.globalData.session_key = res.data.session_key;

                                                    wx.request({

                                                              url: this.globalData.req_url + '/WechatUser/dealUserMsg',

                                                              method:'post',

                                                              header: { 'content-type': 'application/x-www-form-urlencoded' },

                                                              data:{

                                                                        openId:openid

                                                              },

                                                              success:res={

                                                                        console.log(res);

                                                              }

                                                    })

                                              }

                                    })

                              }

                    })

                index.js:

                     // 点击按钮获取手机号

                  getPhoneNumber(e) {

                        wx.request({

                              url: appData.req_url + '/WXCore/decrypt',

                              data:{

                                    openId: appData.openId,

                                    encryptedData: e.detail.encryptedData,

                                    sessionKey: appData.session_key,

                                    iv: e.detail.iv

                              },

                              header: {

                                        'content-type': 'json'

                                },

                              success: res = {

                                    this.setData({

                                            inputShow: true

                                    })

                               if(!res.data.res){

                                      console.log('未绑定手机号');

                                }else{

                                      this.setData({

                                            phoneNumber: res.data.bindPhone

                                      })

                                }

                          }

                    })

              },

            结果如下:

                    

            点击允许,这个时候后台会对传过去的数据进行解密(具体度娘搜索微信小程序手机号码解密),就会将手机号码返回。

            ok,通过button我们成功的拿到了手机号码,那么怎么能在input框获取焦点时拿到手机号码,并且可以修改呢?

            经过a long long time的思考,终于想出了一个土办法。那就是将一个button标签和一个input框通过绝对定位重叠在一起,然后将button标签做成input框的样子,在我们第一次点击的时候成功获取到手机号以后,将button标签通过标志位隐藏,而让input标签显示,并将拿到的手机号码赋给input的value值,如此便可以实现模拟input框获得焦点时获取用户的手机号!!!

            

            虽然土,但是成功将效果实现了不是?

            最后给大家和我自己送上一份心灵鸡汤:

                    你想要的永远和你付出的成正比。

微信小程序获取用户信息、获取用户手机号码

微信小程序 在获取用户信息的时候 有特定的要求 :

button 按钮中open-type有两种方式获取用户的信息:getUserInfo/getPhoneNumber

下面两种信息就是直接展示用户头像和用户微信名但不可获取:

下面我们主要介绍获取微信绑定的手机号的问题:(MPvue模板)

bindGetUserInfo函数中的Even里面包好detail里面会有三个参数:

返回参数的话是需要解密才能使用的,在这里介绍一下第三种使用云调用直接获取开放数据的方式(前端自己解密不需要调用后端接口了~):

    1、首先你的微信小程序是需要开通云开发的。(否则的话在你获取星系以后没回参数里面是没有cloudID的)。

     2、在云开发里面选择云函数然后新建云函数(注意新建云函数的名字下面需要用到的)

        3、接下就是在获取用户信息以后调用函数解密:(mp vue 使用的话需要wx.clould.init()初始化 原生的可以忽略直接调用)

        4、success :callback里面res 里面包含了当前微信账号大量信息:如手机账号(res.result.weRunData.data.phoneNumber)

        5、剩下的就简单多了 可以拿着手机号码进行信任登陆了 !

OPPO手机小程序里怎么获取手机号码?

获取微信小程序的手机号,是需要从登录界面授权手机号就可以。

1.点击我的

在微信小程序首页,点击右下角我的选项。

2.点击登录

进入后点击一下左上角的“登录”选项。

3.点击微信账号快捷登录

在页面点击一下微信账号快捷登录选项。

4.获取手机号

在界面进行获取手机号并点击允许即可。

微信小程序获取用户手机号码

获取用户手机号码 分为以下几步:

此处定义

getPhoneNumber 是微信官方要求,获取用户手机号码授权

onGetPhoneNumber是回调函数,获取授权后会回调到该方法,也就是获取的电话号码就在这个函数的返回值里面。当然这个函数是自定义的,名字大家可以随便起,上面的getPhoneNumber可不能随便修改。

接着我们通过授权之后,获取第三个参数iv,调用下面方法进行服务端解密

that.deciyption(sessionID,encryptedData,iv);

微信小程序开发获取手机号的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于微信小程序 获取手机号、微信小程序开发获取手机号的信息别忘了在本站进行查找喔。

扫码二维码