微信小程序手机号授权

932 阅读1分钟

今天在工作中遇到一个需要制作微信授权用户手机号的功能,在此记录一下。

首先整个代码的实现思路如下:

image.png

下面开始上代码

    <button open-type="getPhoneNumber" @getphonenumber="onGetPhoneNumber">
      点击授权
    </button>

先写一个授权按钮,通过该按钮唤起微信手机号授权框,实现上一步其实就可以在页面上看见如下弹出框了

image.png

然后我们写入如下js代码:


    onGetPhoneNumber(e) {
      if (e.detail.errMsg == "getPhoneNumber:fail user deny") {
        //用户决绝授权
        //拒绝授权后弹出一些提示
      } else {
        //允许授权
        this.sendRequest({
          url: "你的url",
          method: "post",
          data: {
            iv: e.detail.iv,
            encryptedData: e.detail.encryptedData,
            sessionKey: uni.getStorageSync("sessionKey"),//需要先授权登录,然后后端把sessionKey传给前端接收
          },
          success: (res) => {
            this.isToast("授权成功");
          },
          error: (err) => {
            this.isToast("未知错误");
          },
        });
      }
    },

就可以成功和后端对接,获取到用户允许授权的手机号码。