一、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()
有success
、fail
、complete
等属性,下面是这几个属性的详细说明:
success
:wx.login()
成功后的回调函数,该函数接受一个参数,即成功后返回的数据。fail
:wx.login()
失败后的回调函数,该函数接受一个参数,即出错后返回的错误信息。complete
:wx.login()
接口调用结束后的回调函数,无论成功或失败都会执行。
七、wx.login()有哪几个属性?
wx.login()
本身没有任何属性,其属性的作用在于success
、fail
、complete
等回调函数。因此,对于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以及其它基于微信开发工具的项目中。