changed style and increased performance
This commit is contained in:
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user