refactor: updated status.html to use loadconfig
This commit is contained in:
@@ -11,11 +11,11 @@
|
||||
<h1>Проверка сервера</h1>
|
||||
|
||||
<div id="status" class="status checking">
|
||||
Проверяем подключение...
|
||||
Загружаем конфигурацию...
|
||||
</div>
|
||||
|
||||
<div id="info" class="info">
|
||||
Адрес: <span id="url" class="url">http://localhost:3000</span><br>
|
||||
Адрес: <span id="url" class="url">—</span><br>
|
||||
Время ответа: <span id="time">—</span>
|
||||
</div>
|
||||
|
||||
@@ -24,23 +24,46 @@
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// Простая функция проверки сервера
|
||||
let backendUrl = 'http://localhost:3000'; // значение по умолчанию
|
||||
|
||||
// Функция загрузки конфигурации
|
||||
async function loadConfig() {
|
||||
try {
|
||||
const response = await fetch('/config.json');
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP ${response.status}`);
|
||||
}
|
||||
const config = await response.json();
|
||||
backendUrl = config.backendUrl;
|
||||
console.log('Backend URL загружен:', backendUrl);
|
||||
} catch (error) {
|
||||
console.warn('Ошибка загрузки конфигурации, используем fallback:', error);
|
||||
backendUrl = 'http://localhost:3000'; // fallback
|
||||
}
|
||||
}
|
||||
|
||||
// Функция проверки сервера
|
||||
async function checkServer() {
|
||||
const statusElement = document.getElementById('status');
|
||||
const timeElement = document.getElementById('time');
|
||||
const urlElement = document.getElementById('url');
|
||||
const errorElement = document.getElementById('error');
|
||||
const errorMessageElement = document.getElementById('error-message');
|
||||
const serverUrl = 'http://localhost:3000';
|
||||
|
||||
// Обновляем отображаемый URL
|
||||
urlElement.textContent = backendUrl;
|
||||
|
||||
try {
|
||||
statusElement.textContent = 'Проверяем подключение...';
|
||||
statusElement.className = 'status checking';
|
||||
|
||||
// Пытаемся подключиться к серверу
|
||||
const startTime = new Date();
|
||||
const response = await fetch(serverUrl);
|
||||
const endTime = new Date();
|
||||
const startTime = performance.now();
|
||||
const response = await fetch(backendUrl);
|
||||
const endTime = performance.now();
|
||||
|
||||
// Вычисляем время ответа
|
||||
const responseTime = endTime - startTime;
|
||||
const responseTime = Math.round(endTime - startTime);
|
||||
|
||||
if (response.ok) {
|
||||
// Сервер доступен
|
||||
@@ -73,8 +96,23 @@
|
||||
}
|
||||
}
|
||||
|
||||
// Запускаем проверку при загрузке страницы
|
||||
window.onload = checkServer;
|
||||
// Основная функция инициализации
|
||||
async function initialize() {
|
||||
const statusElement = document.getElementById('status');
|
||||
|
||||
try {
|
||||
statusElement.textContent = 'Загружаем конфигурацию...';
|
||||
await loadConfig();
|
||||
await checkServer();
|
||||
} catch (error) {
|
||||
console.error('Ошибка инициализации:', error);
|
||||
statusElement.textContent = '❌ Ошибка инициализации';
|
||||
statusElement.className = 'status offline';
|
||||
}
|
||||
}
|
||||
|
||||
// Запускаем инициализацию при загрузке страницы
|
||||
window.onload = initialize;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user