Skip to content

Commit b9a867a

Browse files
committed
fix: 修复使用nginx部署时日志记录IP异常的问题
1 parent 0c327a4 commit b9a867a

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

dash-fastapi-backend/module_admin/annotation/log_annotation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ async def wrapper(*args, **kwargs):
4949
# 获取请求的url
5050
oper_url = request.url.path
5151
# 获取请求的ip及ip归属区域
52-
oper_ip = request.headers.get('X-Forwarded-For') if AppConfig.app_env == 'prod' else request.headers.get('remote_addr')
52+
oper_ip = request.headers.get('remote_addr') if request.headers.get('is_browser') == 'no' else request.headers.get('X-Forwarded-For')
5353
oper_location = '内网IP'
5454
try:
5555
if oper_ip != '127.0.0.1' and oper_ip != 'localhost':

dash-fastapi-frontend/utils/request.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ def api_request(method: str, url: str, is_headers: bool, params: Optional[dict]
1515
remote_addr = request.headers.get("X-Forwarded-For") if AppConfig.app_env == 'prod' else request.remote_addr
1616
if is_headers:
1717
api_headers = {'Authorization': 'Bearer ' + authorization, 'remote_addr': remote_addr,
18-
'User-Agent': user_agent}
18+
'User-Agent': user_agent, 'is_browser': 'no'}
1919
else:
20-
api_headers = {'remote_addr': remote_addr, 'User-Agent': user_agent}
20+
api_headers = {'remote_addr': remote_addr, 'User-Agent': user_agent, 'is_browser': 'no'}
2121
try:
2222
if method == 'get':
2323
response = requests.get(url=api_url, params=params, data=data, json=json, headers=api_headers,
@@ -49,21 +49,21 @@ def api_request(method: str, url: str, is_headers: bool, params: Optional[dict]
4949
if response_code == 200:
5050
logger.info("[api]请求人:{}||请求IP:{}||请求方法:{}||请求Api:{}||请求参数:{}||请求结果:{}",
5151
session.get('user_info').get('user_name') if session.get('user_info') else None,
52-
request.remote_addr, method, url,
52+
remote_addr, method, url,
5353
','.join([str(x) for x in data_list if x]),
5454
response_message)
5555
else:
5656
logger.warning("[api]请求人:{}||请求IP:{}||请求方法:{}||请求Api:{}||请求参数:{}||请求结果:{}",
5757
session.get('user_info').get('user_name') if session.get('user_info') else None,
58-
request.remote_addr, method, url,
58+
remote_addr, method, url,
5959
','.join([str(x) for x in data_list if x]),
6060
response_message)
6161

6262
return response if stream else response.json()
6363
except Exception as e:
6464
logger.error("[api]请求人:{}||请求IP:{}||请求方法:{}||请求Api:{}||请求结果:{}",
6565
session.get('user_info').get('user_name') if session.get('user_info') else None,
66-
request.remote_addr, method, url, str(e))
66+
remote_addr, method, url, str(e))
6767
session['code'] = 500
6868
session['message'] = str(e)
6969

0 commit comments

Comments
 (0)