diff --git a/app.py b/app.py
index 3dc9ae4..d233bd7 100644
--- a/app.py
+++ b/app.py
@@ -1,4 +1,5 @@
from flask import Flask, jsonify
+from datetime import datetime
from flask_cors import CORS
import threading
import paramiko
@@ -121,24 +122,31 @@ def get_all_data():
# 根据key过滤所需的服务器数据
def filter_data(title_list: list):
result = dict()
+ server_data = dict()
for title in title_list:
- result[title] = {}
+ server_data[title] = {}
# 不存在该title的数据
if title not in data_dict:
- result[title]['err_info'] = f'title \'{title}\' not exist!'
+ server_data[title]['err_info'] = f'title \'{title}\' not exist!'
continue
# 还没获取到数据
info_list = data_dict[title].get('info_list', None)
if info_list is None:
- result[title]['err_info'] = f'\'{title}\' still empty.'
+ err_info = data_dict[title].get('err_info', None)
+ if err_info is not None:
+ server_data[title]['err_info'] = data_dict[title]['err_info']
+ else:
+ server_data[title]['err_info'] = f'\'{title}\' still empty.'
continue
# 记录数据
data_updated = data_dict[title].get('updated', False)
err_info = data_dict[title].get('err_info', '')
- result[title]['info_list'] = info_list
- result[title]['updated'] = data_updated
- result[title]['err_info'] = err_info
+ server_data[title]['info_list'] = info_list
+ server_data[title]['updated'] = data_updated
+ server_data[title]['err_info'] = err_info
+ result['time'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
+ result['server_data'] = server_data
return result
def start_connect():
diff --git a/index.html b/index.html
index 90d35bc..851ea94 100644
--- a/index.html
+++ b/index.html
@@ -38,15 +38,33 @@
displayServerData(data); // 调用显示数据的函数
})
.catch(error => {
- console.error('Error fetching data:', error);
+ // console.error('Error fetching data:', error);
+ displayError(error + " (多半是没有正确连接服务器端,可能是没开、网络错误)");
});
}
- function displayServerData(serverData) {
+ function displayError(err_info){
+ let serverDataContainer = document.getElementById('server-data');
+ serverDataContainer.innerHTML = ''; // 清空容器
+
+ let errDiv = document.createElement('div');
+ errDiv.classList.add('error-info');
+ errDiv.innerHTML = err_info;
+ serverDataContainer.appendChild(errDiv);
+ }
+
+ function displayServerData(data) {
// 绘制 -------------------
let serverDataContainer = document.getElementById('server-data');
serverDataContainer.innerHTML = ''; // 清空容器
+ let timeStr = data['time']
+ let serverData = data['server_data']
+
+ let timeDiv = document.createElement('div');
+ timeDiv.textContent = timeStr;
+ serverDataContainer.appendChild(timeDiv);
+
let greenDot = ' 空闲';
let yellowDot = ' 占用';
let redDot = ' 占用';