Update server.js
Browse files
server.js
CHANGED
|
@@ -420,29 +420,6 @@ app.listen(port, () => {
|
|
| 420 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 421 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 422 |
});
|
| 423 |
-
// 缓存管理
|
| 424 |
-
class SpaceCache {
|
| 425 |
-
constructor() {
|
| 426 |
-
this.spaces = {};
|
| 427 |
-
this.lastUpdate = null;
|
| 428 |
-
}
|
| 429 |
-
|
| 430 |
-
updateAll(spacesData) {
|
| 431 |
-
this.spaces = spacesData.reduce((acc, space) => ({ ...acc, [space.repo_id]: space }), {});
|
| 432 |
-
this.lastUpdate = Date.now();
|
| 433 |
-
}
|
| 434 |
-
|
| 435 |
-
getAll() {
|
| 436 |
-
return Object.values(this.spaces);
|
| 437 |
-
}
|
| 438 |
-
|
| 439 |
-
isExpired(expireMinutes = 5) {
|
| 440 |
-
if (!this.lastUpdate) return true;
|
| 441 |
-
return (Date.now() - this.lastUpdate) > (expireMinutes * 60 * 1000);
|
| 442 |
-
}
|
| 443 |
-
}
|
| 444 |
-
|
| 445 |
-
const spaceCache = new SpaceCache();
|
| 446 |
|
| 447 |
// 提供静态文件(前端文件)
|
| 448 |
app.use(express.static(path.join(__dirname, 'public')));
|
|
@@ -805,29 +782,6 @@ app.listen(port, () => {
|
|
| 805 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 806 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 807 |
});
|
| 808 |
-
// 缓存管理
|
| 809 |
-
class SpaceCache {
|
| 810 |
-
constructor() {
|
| 811 |
-
this.spaces = {};
|
| 812 |
-
this.lastUpdate = null;
|
| 813 |
-
}
|
| 814 |
-
|
| 815 |
-
updateAll(spacesData) {
|
| 816 |
-
this.spaces = spacesData.reduce((acc, space) => ({ ...acc, [space.repo_id]: space }), {});
|
| 817 |
-
this.lastUpdate = Date.now();
|
| 818 |
-
}
|
| 819 |
-
|
| 820 |
-
getAll() {
|
| 821 |
-
return Object.values(this.spaces);
|
| 822 |
-
}
|
| 823 |
-
|
| 824 |
-
isExpired(expireMinutes = 5) {
|
| 825 |
-
if (!this.lastUpdate) return true;
|
| 826 |
-
return (Date.now() - this.lastUpdate) > (expireMinutes * 60 * 1000);
|
| 827 |
-
}
|
| 828 |
-
}
|
| 829 |
-
|
| 830 |
-
const spaceCache = new SpaceCache();
|
| 831 |
|
| 832 |
// 提供静态文件(前端文件)
|
| 833 |
app.use(express.static(path.join(__dirname, 'public')));
|
|
@@ -1190,29 +1144,6 @@ app.listen(port, () => {
|
|
| 1190 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 1191 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 1192 |
});
|
| 1193 |
-
// 缓存管理
|
| 1194 |
-
class SpaceCache {
|
| 1195 |
-
constructor() {
|
| 1196 |
-
this.spaces = {};
|
| 1197 |
-
this.lastUpdate = null;
|
| 1198 |
-
}
|
| 1199 |
-
|
| 1200 |
-
updateAll(spacesData) {
|
| 1201 |
-
this.spaces = spacesData.reduce((acc, space) => ({ ...acc, [space.repo_id]: space }), {});
|
| 1202 |
-
this.lastUpdate = Date.now();
|
| 1203 |
-
}
|
| 1204 |
-
|
| 1205 |
-
getAll() {
|
| 1206 |
-
return Object.values(this.spaces);
|
| 1207 |
-
}
|
| 1208 |
-
|
| 1209 |
-
isExpired(expireMinutes = 5) {
|
| 1210 |
-
if (!this.lastUpdate) return true;
|
| 1211 |
-
return (Date.now() - this.lastUpdate) > (expireMinutes * 60 * 1000);
|
| 1212 |
-
}
|
| 1213 |
-
}
|
| 1214 |
-
|
| 1215 |
-
const spaceCache = new SpaceCache();
|
| 1216 |
|
| 1217 |
// 提供静态文件(前端文件)
|
| 1218 |
app.use(express.static(path.join(__dirname, 'public')));
|
|
|
|
| 420 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 421 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 422 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 423 |
|
| 424 |
// 提供静态文件(前端文件)
|
| 425 |
app.use(express.static(path.join(__dirname, 'public')));
|
|
|
|
| 782 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 783 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 784 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 785 |
|
| 786 |
// 提供静态文件(前端文件)
|
| 787 |
app.use(express.static(path.join(__dirname, 'public')));
|
|
|
|
| 1144 |
console.log(`User configurations:`, usernames.map(user => `${user}: ${userTokenMapping[user] ? 'Token Configured' : 'No Token'}`).join(', ') || 'None');
|
| 1145 |
console.log(`Admin login enabled: Username=${ADMIN_USERNAME}, Password=${ADMIN_PASSWORD ? 'Configured' : 'Not Configured'}`);
|
| 1146 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1147 |
|
| 1148 |
// 提供静态文件(前端文件)
|
| 1149 |
app.use(express.static(path.join(__dirname, 'public')));
|