changed style and increased performance

This commit is contained in:
Simon
2026-06-23 19:38:59 +00:00
parent d6865d7c35
commit 55828c9726
3 changed files with 120 additions and 36 deletions

View File

@@ -195,20 +195,36 @@ App.session = App.session || {};
const config = JSON.parse(localStorage.getItem('config'));
if (!config || !config.servers) return;
const fetchDirectStatus = async (server) => {
const directUrl = `${server.replace(/\/$/, '')}/api/status`;
const response = await fetch(directUrl);
if (!response.ok) throw new Error(`Direct status request failed: ${response.status}`);
return await response.json();
};
const fetchProxiedStatus = async (server) => {
const response = await fetch(`/api/status`, {
method: "POST",
body: JSON.stringify({
server: server
}),
headers: {
"Content-Type": "application/json"
},
});
if (!response.ok) throw new Error(`Proxied status request failed: ${response.status}`);
return await response.json();
};
const statusPromises = config.servers.map(async (serverObj) => {
const server = Object.keys(serverObj)[0];
try {
const response = await fetch(`/api/status`, {
method: "POST",
body: JSON.stringify({
server: server
}),
headers: {
"Content-Type": "application/json"
},
});
const status = await response.json();
serverObj[server] = status;
// Try a direct request first, then fall back to the server-side proxy.
try {
serverObj[server] = await fetchDirectStatus(server);
} catch (directErr) {
serverObj[server] = await fetchProxiedStatus(server);
}
} catch (err) {
serverObj[server] = {
online: false,