diff --git a/dash-fastapi-frontend/server.py b/dash-fastapi-frontend/server.py
index 853fe10e6ce1d579cadf6b3d7e348de3bfd0bc8d..e1bca53ee20d6edcc36a5cc40307d06faf02b574 100644
--- a/dash-fastapi-frontend/server.py
+++ b/dash-fastapi-frontend/server.py
@@ -46,7 +46,7 @@ def get_user_agent_info():
'用户使用IE内核',
)
return "
请不要使用IE浏览器或360浏览器兼容模式
"
- if bw_version < 71:
+ if bw == 'Chrome' and bw_version < 71:
logger.warning(
'[sys]请求人:{}||请求IP:{}||请求方法:{}||请求Data:{}',
session.get('name'),
diff --git a/dash-fastapi-frontend/utils/common_util.py b/dash-fastapi-frontend/utils/common_util.py
index c7c80db538eb4168073fa5bf897cac825d7850f3..0dfae700deeed46b2f68245642b17960fd7fec9e 100644
--- a/dash-fastapi-frontend/utils/common_util.py
+++ b/dash-fastapi-frontend/utils/common_util.py
@@ -1,6 +1,32 @@
+from copy import deepcopy
from typing import Dict, List, Union
+class FilterUtil:
+ """
+ 过滤工具类
+ """
+
+ @classmethod
+ def fliter_params(cls, params_name: Union[str, List[str]], fliter_dict: Dict):
+ """
+ 过滤字典数据中指定名称的参数
+
+ :param params_name: 需要过滤的参数名称
+ :param fliter_dict: 需要过滤的字典数据
+ :return: 过滤后的字典数据
+ """
+ copy_dict = deepcopy(fliter_dict)
+ if isinstance(params_name, str) and params_name in copy_dict:
+ copy_dict.pop(params_name)
+ elif isinstance(params_name, list):
+ for name in params_name:
+ if name in copy_dict:
+ copy_dict.pop(name)
+
+ return copy_dict
+
+
class ValidateUtil:
"""
校验工具类
diff --git a/dash-fastapi-frontend/utils/request.py b/dash-fastapi-frontend/utils/request.py
index 4ad69d6c5f48eb83e748c51eadb14e0a899a353d..684c209bd17d41c281dd5dac2e8e7db8dd01ce8c 100644
--- a/dash-fastapi-frontend/utils/request.py
+++ b/dash-fastapi-frontend/utils/request.py
@@ -11,6 +11,7 @@ from config.exception import (
ServiceWarning,
)
from utils.cache_util import CacheManager
+from utils.common_util import FilterUtil
from utils.log_util import logger
@@ -127,7 +128,18 @@ def api_request(
if CacheManager.get('user_info')
else None
)
- request_params = ','.join([str(x) for x in data_list if x])
+ request_params = ','.join(
+ [
+ str(
+ FilterUtil.fliter_params(
+ params_name=['password', 'old_password', 'new_password'],
+ fliter_dict=x,
+ )
+ )
+ for x in data_list
+ if x
+ ]
+ )
log_message = LogMessage(
request_user,
remote_addr,
diff --git a/dash-fastapi-frontend/wsgi.py b/dash-fastapi-frontend/wsgi.py
index 4e50b7779111425dcb51975ae720aab0cdcec458..8bf1713abb5cc11aeb4371db698e2de8bfd2d6c6 100644
--- a/dash-fastapi-frontend/wsgi.py
+++ b/dash-fastapi-frontend/wsgi.py
@@ -5,5 +5,7 @@ from config.env import AppConfig
serve(
app.server,
host=AppConfig.app_host,
- port=AppConfig.app_port
+ port=AppConfig.app_port,
+ trusted_proxy='*',
+ trusted_proxy_headers='x-forwarded-for',
)