wx.login详解

发布时间:2023-05-17

一、wx.login需要授权吗?

当你需要获取用户的登录态时,调用wx.login()就能实现。但是,在小程序中调用此接口,会自动弹出授权框,要求用户授权登录。用户授权后,才能获取到登录态code,并用code进行后端登录,从而获取用户身份标识以及用户登录状态。 需要注意的是,wx.login()只能在用户授权后才能调用,否则会返回错误。

二、wx.login授权无法获取头像?

跟微信公众号不同的是,在小程序中,小程序接口获取微信用户基础信息将直接授权至小程序,无法获取到用户头像的相关信息。 如果小程序需要获取用户头像信息,需要通过调用微信开放平台的个人用户信息接口,且在小程序后台配置域名验证并进行相应的业务赋权。经过业务授权后,方能成功调用获取用户头像信息接口。

三、wx.login是开放接口吗?

wx.login()是小程序登录的开放接口,当用户在微信客户端完成授权登录后,小程序能够通过调用微信服务器提供的接口,获取到用户登录态code。 当获取到code后,小程序可根据业务需求传递给服务器,以便于服务器在获取其它用户信息前验证用户登录状态。

四、wx.login流程

wx.login({
    success: function(res) {
        if (res.code) {
            //发起网络请求
            wx.request({
                url: 'https://example.com/onLogin',
                data: {
                    code: res.code
                }
            })
        } else {
            console.log('登录失败!' + res.errMsg)
        }
    }
});

调用wx.login()接口后,实现小程序登录状态校验的基本流程如下:

1. 已经登录过

wx.checkSession({
    success: function(){
        //session_key 未过期,并且在本生命周期一直有效
        //可以直接获取用户信息了
        wx.getUserInfo({
            success: function(res){
                console.log(res.userInfo)
            }
        })
    },
    fail: function(){
        // session_key 已经失效,需要重新执行登录流程
        wx.login()
    }
})

2. 未登录过

wx.login({
    success: function(res){
        if (res.code) {
            //发起网络请求
            wx.request({
                url: 'https://example.com/onLogin',
                data: {
                    code: res.code
                }
            })
        } else {
            console.log('登录失败!' + res.errMsg)
        }
    }
});

五、wx.login出错是啥意思?

wx.login()出错时,会返回错误码,开发者可以根据错误码进行相关的处理。 通常情况下,如出现错误,可通过代码进行错误提示,以方便用户进行后续操作。

六、wx.login有哪几个属性?

wx.login()successfailcomplete等属性,下面是这几个属性的详细说明:

  • successwx.login()成功后的回调函数,该函数接受一个参数,即成功后返回的数据。
  • failwx.login()失败后的回调函数,该函数接受一个参数,即出错后返回的错误信息。
  • completewx.login()接口调用结束后的回调函数,无论成功或失败都会执行。

七、wx.login()有哪几个属性?

wx.login()本身没有任何属性,其属性的作用在于successfailcomplete等回调函数。因此,对于wx.login()本身而言,没有属性可言。

八、wx.login是什么接口?

wx.login()是小程序登录状态校验接口,通过该接口获取用户的登录态code,再将code传递给开发者的服务器,以便于服务器验证用户的登录状态。

九、wx.login传递的参数

wx.login()接口仅接受一个参数:

  • Object param param的字段如下:
  • success
  • fail
  • complete

十、wx.login什么意思?

wx.login()是一种小程序登录验证方式,根据该接口返回的code,实现小程序的登录认证等相关业务功能。 wx.login()功能不仅限于小程序,也可以应用于微信小游戏、H5以及其它基于微信开发工具的项目中。