提交
This commit is contained in:
106
甲情_甲意/miniprogram/pages/denglu/denglu.js
Normal file
106
甲情_甲意/miniprogram/pages/denglu/denglu.js
Normal file
@ -0,0 +1,106 @@
|
||||
import {url} from '../request'
|
||||
Page({
|
||||
data: {
|
||||
authCode: '',
|
||||
intervalId: null, // 定时器ID,用于后续清除
|
||||
sid:0
|
||||
},
|
||||
|
||||
Login() {
|
||||
my.getAuthCode({
|
||||
scopes: 'auth_user',
|
||||
success: res => {
|
||||
const authcode = res.authCode;
|
||||
console.log(typeof authcode);
|
||||
console.log(authcode);
|
||||
|
||||
// 请求后端接口进行用户登录
|
||||
my.request({
|
||||
url: url + '/api/Alipay/parseCode',
|
||||
data: {
|
||||
authcode,
|
||||
severId:this.data.sid
|
||||
},
|
||||
success: (res) => {
|
||||
if(res.data.code==0){
|
||||
const { username, avatarUrl, id } = res.data.data.userVO;
|
||||
const setCookie = res.header['set-cookie'] || res.header['Set-Cookie'];
|
||||
console.log('Set-Cookie:', setCookie + '这是这个码');
|
||||
|
||||
// 存储用户信息到本地存储
|
||||
my.setStorage({
|
||||
key: 'userInfo',
|
||||
data: {
|
||||
username: username,
|
||||
avatarUrl: avatarUrl,
|
||||
cookie: setCookie,
|
||||
id: id,
|
||||
timestamp: new Date().getTime(),
|
||||
},
|
||||
success: function () {
|
||||
console.log('用户信息已存储');
|
||||
},
|
||||
fail: function (err) {
|
||||
console.error('存储失败:', err);
|
||||
}
|
||||
});
|
||||
|
||||
// 启动定时器清除缓存
|
||||
this.startClearingStorage();
|
||||
|
||||
// 登录成功后的处理逻辑
|
||||
console.log(res);
|
||||
my.alert({
|
||||
title: '登录成功',
|
||||
});
|
||||
my.navigateBack();
|
||||
}else{
|
||||
this.setData({
|
||||
sid:1,
|
||||
})
|
||||
console.log(this.data.sid);
|
||||
}
|
||||
},
|
||||
fail: (res) => {
|
||||
this.setData({
|
||||
sid:1,
|
||||
})
|
||||
console.log("登录失败:", res);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 启动定时器清除缓存
|
||||
startClearingStorage() {
|
||||
// 清除缓存定时器,每小时检查一次
|
||||
const intervalId = setInterval(() => {
|
||||
my.getStorage({
|
||||
key: 'userInfo',
|
||||
success: (res) => {
|
||||
const userInfo = res.data;
|
||||
|
||||
if (userInfo) {
|
||||
my.removeStorage({
|
||||
key: 'userInfo',
|
||||
success: function () {
|
||||
console.log('用户信息已删除');
|
||||
},
|
||||
fail: function (err) {
|
||||
console.error('删除失败:', err);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
console.log('缓存中没有用户信息,停止定时器');
|
||||
clearInterval(intervalId); // 清除定时器
|
||||
}
|
||||
},
|
||||
});
|
||||
}, 86400*1000); // 每小时检查一次,单位是毫秒(3600秒 = 1小时)
|
||||
// 保存定时器ID,便于后续清除定时器
|
||||
this.setData({
|
||||
intervalId: intervalId,
|
||||
});
|
||||
},
|
||||
});
|
Reference in New Issue
Block a user