diff --git a/src/main.py b/src/main.py index a62e3e2..012bf31 100644 --- a/src/main.py +++ b/src/main.py @@ -230,8 +230,26 @@ register_blueprints(app) # ============ 健康检查 ============ @app.route('/api/health', methods=['GET']) def health_check(): - """健康检查接口""" - return jsonify({'status': 'ok', 'code': 0}) + """健康检查接口,返回系统监控数据""" + import psutil + try: + cpu_percent = int(psutil.cpu_percent(interval=None)) + memory = psutil.virtual_memory() + memory_percent = int(memory.percent) + disk = psutil.disk_usage('/') + disk_percent = int(disk.percent) + + return jsonify({ + 'status': 'ok', + 'code': 0, + 'data': { + 'cpu_percent': cpu_percent, + 'memory_percent': memory_percent, + 'disk_percent': disk_percent + } + }) + except Exception as e: + return jsonify({'status': 'error', 'code': 1, 'message': str(e)}) # ============ 通用 CRUD 操作 ============ diff --git a/web/index.html b/web/index.html new file mode 100644 index 0000000..f5c00c9 --- /dev/null +++ b/web/index.html @@ -0,0 +1,25 @@ + + +
+ +正在检查登录状态...
+ + + diff --git a/web/pages/login.html b/web/pages/login.html index c26887d..5ef4fed 100644 --- a/web/pages/login.html +++ b/web/pages/login.html @@ -159,6 +159,9 @@ if (result.code === 0) { errorMsg.classList.add('hidden'); + // 保存登录时间戳(5分钟超时) + localStorage.setItem('loginTime', Date.now()); + localStorage.setItem('username', username); window.location.href = 'main.html'; } else { errorMsg.textContent = result.message || '账号或密码错误'; diff --git a/web/pages/main.html b/web/pages/main.html index ae885bf..971ef14 100644 --- a/web/pages/main.html +++ b/web/pages/main.html @@ -258,6 +258,22 @@