checkSession
解释:通过上述接口获得的用户登录态拥有一定的时效性,用户越久未使用智能小程序,用户登录态越有可能失效;反之如果用户一直在使用智能小程序,则用户登录态一直保持有效。具体时效逻辑由宿主维护,对开发者透明。开发者可以调用 swan.checkSession 接口 检测当前用户登录态是否有效,登录态过期后开发者可以再调用 swan.login 获取新的用户登录态。
参数:Object
Object参数说明:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
success | Function | 否 | 接口调用成功的回调函数 |
fail | Function | 否 | 接口调用失败的回调函数 |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
示例:
- swan.checkSession({
success: function (res) {
console.log('登录态有效');
swan.getUserInfo({
success: function (res) {
console.log('用户名', res.userInfo.nickName);
swan.request({
url: "https://xxx/decrypt_user_data", // 开发者服务器地址,对 data 进行解密
data: {
data: res.data,
iv: res.iv
}
});
}
})
},
fail: function (err) {
console.log('登录态无效');
swan.login({
success: function (res) {
swan.request({
url: 'https://xxx/xxx', // 开发者服务器地址,用 code 换取 session_key
data: {
code: res.code
}
});
},
fail: function (err) {
console.log('登录失败', err);
}
});
}
});