From 5774ea3da907233837c2cdae3b602d444c2781b7 Mon Sep 17 00:00:00 2001
From: lxb <1580622474@qq.com>
Date: Sun, 8 Dec 2024 18:03:56 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E6=9B=B4=E6=96=B0=E5=8F=AF=E4=BB=A5?=
=?UTF-8?q?=E9=80=9A=E8=BF=87=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E4=BF=AE?=
=?UTF-8?q?=E6=94=B9api=E7=9A=84=E5=90=8D=E7=A7=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
client.py | 2 +-
client_config.json | 3 ++-
server.py | 23 +++++++++++------------
server_config.json | 3 ++-
web/js/script.js | 4 ++--
5 files changed, 18 insertions(+), 17 deletions(-)
diff --git a/client.py b/client.py
index 2e75cde..7fdc233 100644
--- a/client.py
+++ b/client.py
@@ -205,7 +205,7 @@ def main():
# 持续发送
send_interval = client_cfg['interval']
- api_url = client_cfg['server_url'] + '/api/update_data'
+ api_url = client_cfg['server_url'] + f'/{client_cfg['api_name']}/update_data'
while True:
data = collect_data()
try:
diff --git a/client_config.json b/client_config.json
index eff9a25..a595694 100644
--- a/client_config.json
+++ b/client_config.json
@@ -9,5 +9,6 @@
"/media/D",
"/media/E",
"/media/F"
- ]
+ ],
+ "api_name": "api"
}
\ No newline at end of file
diff --git a/server.py b/server.py
index 536b3d5..513fce4 100644
--- a/server.py
+++ b/server.py
@@ -10,20 +10,28 @@ CORS(app)
server_cfg = None
data_dict = dict()
+parser = argparse.ArgumentParser()
+parser.add_argument('--cfg', default='server_config.json', type=str, help='the path of config json.')
+args = parser.parse_args()
+# 加载配置文件
+cfg_path = args.cfg
+with open(cfg_path, 'r') as f:
+ server_cfg = json.load(f)
+
#endregion
#region 接口
# 测试用
-@app.route('/api')
+@app.route(f'/{server_cfg['api_name']}')
def hello():
return 'hi. —— CheckGPUsWeb'
-@app.route('/api/get_data', methods=['GET'])
+@app.route(f'/{server_cfg['api_name']}/get_data', methods=['GET'])
def get_data():
return jsonify(data_dict)
-@app.route('/api/update_data', methods=['POST'])
+@app.route(f'/{server_cfg['api_name']}/update_data', methods=['POST'])
def receive_data():
data = request.json
# 如果存在对应标题则更新记录
@@ -46,15 +54,6 @@ def init():
data_dict['server_dict'][server_name] = None
def main():
- parser = argparse.ArgumentParser()
- parser.add_argument('--cfg', default='server_config.json', type=str, help='the path of config json.')
- args = parser.parse_args()
- # 加载配置文件
- cfg_path = args.cfg
- global server_cfg
- with open(cfg_path, 'r') as f:
- server_cfg = json.load(f)
-
init()
# flask
app.run(debug=False, host=server_cfg['host'], port=server_cfg['port'])
diff --git a/server_config.json b/server_config.json
index 928f390..b7285a3 100644
--- a/server_config.json
+++ b/server_config.json
@@ -4,5 +4,6 @@
"server_list":["76", "174", "233", "222"],
"note_dict":{
"174": "test note"
- }
+ },
+ "api_name": "api"
}
\ No newline at end of file
diff --git a/web/js/script.js b/web/js/script.js
index fd57979..b93b6bb 100644
--- a/web/js/script.js
+++ b/web/js/script.js
@@ -1,6 +1,6 @@
// 请求服务器获取数据
function fetchData() {
- fetch('http://10.1.16.174:15002/api/get_data')
+ fetch('http://10.1.16.174:15002/api/get_data') // http://mm.zjgsu.edu.cn/serverInfo-api/get_data
// 获取服务器和显卡数据
.then(response => response.json()) // 解析 JSON 响应
.then(data => {
@@ -130,7 +130,7 @@ function displayServerData(data){
serverData.cpu['temperature_list'].forEach(function(v){
temperature_list_str += v + " ℃ ";
});
- cpuInfo.innerHTML = "CPU型号 : " + serverData.cpu['name'] + "
" +
+ cpuInfo.innerHTML = "" + serverData.cpu['name'] + "
" +
"温度 : " + temperature_list_str + "
" +
"占用率 : " + serverData.cpu['core_avg_occupy'] + "%";