前端微信小程序登录流程

241 阅读1分钟

1.调用wx.login接口获取code

 wx.login({
         success(res) {
             if (res.code) {
                  //发起网络请求
                    _this.getOpenid(res.code);   //拿到code后去获取openid
                } else {
                    console.log('操作失败!' + res.errMsg)
                }
             },
             fail(data) {
                  wx.showToast({
                      title: data.errMsg,
                      icon: 'none'
                 })
             }


   })

2.调用后端专门写的通过codeopenid的接口

   async getOpenid(code) {
        try {
            let data = {
                code: code
            }
            const res = await apiPersonal.wxUserVerify(data)   
            if (res.code == 200) {
               // 此处是手机验证码登录和账户密码登录两种情况
                if (this.data.loginType == 'password') {  
                    this.loginFn(res.result.openid);
                } else {
                    this.loginCodeFn(res.result.openid);
                }
            } else {
                wx.showToast({
                    title: res.message,
                    icon: 'none'
                })
            }
        } catch (error) {

        }
    },

3.拿到openid后调用登录接口 传对应的值即完成登录流程