小程序授权登陆流程

本文详细介绍了微信小程序授权登录的流程。首先,在需要用户信息的场景(如支付)中,设置点击事件获取用户授权。接着,通过`bindgetuserinfo`事件获取用户信息,并使用`wx.login()`方法获取唯一`code`。然后,将用户信息和`code`发送到服务器进行登录验证。最后,成功后返回上一页面,实现授权登录。整个过程涉及微信个人信息、授权、登录接口和服务器交互。
摘要由CSDN通过智能技术生成


小程序授权登录

微信小程序授权登录一般是通过将获取到的微信个人信息,通过这些信息得到登录的权限


小程序授权登陆流程

1.在支付或者需要用到手机用户信息时会遇到获取登录权限
比如在小程序在支付时经常会遇到未登录的情况
在这里插入图片描述
下面就需要我们对这个按钮设置点击事件
在微信小程序中可以通过下面代码来执行点击操作

<button type="primary" plain open-type="getUserInfo" bindgetuserinfo="handleUserInfo" >
//open-type 和bindgetuserinfo 是为了开启按钮的点击事件
  获取授权
</button>

2.在上面的bindgetuserinfo绑定的事件中进行代码操作

handleUserInfo(e) {
    console.log(e);
    //e里面包含所有的用户信息
    //使用Promise方法来执行成功和失败
    new Promise((resolve, reject) => {
    //使用wx.login()方法来调用获取成功后的数据信息
      wx.login({
        success: (res) => {
          console.log(res);
          let code = res.code; //返回一个code  唯一的
          //定义一个数组来接收可能用到的数据(loadingParams)
          const loadingParams = {
            encryptedData: e.detail.encryptedData,
            rawData: e.detail.rawData,
            iv: e.detail.iv,
            signature: e.detail.signature,
            code
          }; // 创建一个对象 执行resolve
          resolve(loadingParams); // 把创建的对象当作参数
        },
        fail(err) {
          reject(err);
        }
      })
    }).then(res => { // res 就是resolve 中的参数
      console.log(res);
      wx.request({
        url: 'https://api-hmugo-web.itheima.net/api/public/v1/users/wxlogin', // 相当于登录的接口
        data: res,
        method: 'post',
        success(res) {
          // res中一般会包含一个token
          wx.navigateBack({ // 返回上一个页面
            delta: 1
          });
        },
        //如果获取成功就会跳转到登录的界面登录后在跳转到支付界面进行支付
        fail(err) {
          console.log(err);
        }
      })
    })
  },

总结

在小程序获取授权登录时往往获取的是微信中的个人信息
一般通过获取到的信息来进行授权登录

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值