Skip to content

Commit e90aae0

Browse files
committed
🐞 Fix(Fixed some bugs): 修复一些bug
1 parent b27f9d6 commit e90aae0

File tree

2 files changed

+54
-59
lines changed

2 files changed

+54
-59
lines changed

backend/plugin/api_testing/api/v1/environment.py

Lines changed: 42 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -8,80 +8,77 @@
88
from fastapi import APIRouter, Body, Path, Query
99
from fastapi.responses import JSONResponse
1010

11-
from backend.common.response.response_schema import response_base
11+
from backend.common.response.response_schema import response_base, ResponseModel, ResponseSchemaModel
1212
from backend.plugin.api_testing.utils.environment import (
13-
EnvironmentManager, EnvironmentModel, VariableManager, VariableModel,
13+
EnvironmentManager, EnvironmentModel, VariableManager, VariableModel,
1414
VariableScope, EnvironmentType
1515
)
1616

1717
router = APIRouter()
1818

19+
1920
# 环境管理接口
2021
@router.post("/environments", summary="创建环境")
21-
async def create_environment(environment: EnvironmentModel) -> JSONResponse:
22+
async def create_environment(environment: EnvironmentModel) -> ResponseModel | ResponseSchemaModel:
2223
"""
2324
创建环境
2425
"""
2526
success = await EnvironmentManager.create_environment(environment)
2627
if success:
27-
return response_base.success(data=environment.model_dump(), msg="环境创建成功")
28+
return response_base.success(data=environment.model_dump())
2829
else:
29-
return response_base.fail(msg="环境创建失败")
30+
return response_base.fail()
3031

3132

3233
@router.get("/environments/{environment_id}", summary="获取环境信息")
33-
async def get_environment(environment_id: int = Path(..., description="环境ID")) -> JSONResponse:
34+
async def get_environment(environment_id: int = Path(description="环境ID")) -> ResponseModel | ResponseSchemaModel:
3435
"""
3536
获取环境信息
3637
"""
3738
environment = await EnvironmentManager.get_environment(environment_id)
3839
if environment:
39-
return response_base.success(data=environment.model_dump(), msg="环境获取成功")
40+
return response_base.success(data=environment.model_dump())
4041
else:
41-
return response_base.fail(msg="环境不存在")
42+
return response_base.fail()
4243

4344

4445
@router.put("/environments/{environment_id}", summary="更新环境信息")
4546
async def update_environment(
46-
environment: EnvironmentModel,
47-
environment_id: int = Path(..., description="环境ID")
48-
) -> JSONResponse:
47+
environment: EnvironmentModel,
48+
environment_id: int = Path(description="环境ID")
49+
) -> ResponseModel | ResponseSchemaModel:
4950
"""
5051
更新环境信息
5152
"""
5253
# 确保路径参数和请求体ID一致
5354
if environment.id != environment_id:
54-
return response_base.fail(msg="环境ID不匹配")
55-
55+
return response_base.fail()
5656
success = await EnvironmentManager.update_environment(environment)
5757
if success:
58-
return response_base.success(data=environment.model_dump(), msg="环境更新成功")
58+
return response_base.success(data=environment.model_dump())
5959
else:
60-
return response_base.fail(msg="环境更新失败")
60+
return response_base.fail()
6161

6262

6363
@router.delete("/environments/{environment_id}", summary="删除环境")
64-
async def delete_environment(environment_id: int = Path(..., description="环境ID")) -> JSONResponse:
64+
async def delete_environment(environment_id: int = Path(description="环境ID")) -> ResponseModel | ResponseSchemaModel:
6565
"""
6666
删除环境
6767
"""
6868
success = await EnvironmentManager.delete_environment(environment_id)
6969
if success:
70-
return response_base.success(msg="环境删除成功")
70+
return response_base.success(data=f"删除环境ID为:{environment_id} 成功")
7171
else:
72-
return response_base.fail(msg="环境删除失败")
72+
return response_base.fail()
7373

7474

7575
@router.get("/environments", summary="获取环境列表")
76-
async def list_environments(project_id: int = Query(..., description="项目ID")) -> JSONResponse:
76+
async def list_environments(project_id: int = Query(..., description="项目ID")) -> ResponseModel | ResponseSchemaModel:
7777
"""
7878
获取项目环境列表
7979
"""
8080
environments = await EnvironmentManager.list_environments(project_id)
81-
return response_base.success(
82-
data=[env.model_dump() for env in environments],
83-
msg="获取环境列表成功"
84-
)
81+
return response_base.success(data=[env.model_dump() for env in environments])
8582

8683

8784
@router.get("/environments/default", summary="获取默认环境")
@@ -98,8 +95,8 @@ async def get_default_environment(project_id: int = Query(..., description="项
9895

9996
@router.put("/environments/{environment_id}/default", summary="设置默认环境")
10097
async def set_default_environment(
101-
project_id: int = Query(..., description="项目ID"),
102-
environment_id: int = Path(..., description="环境ID")
98+
project_id: int = Query(..., description="项目ID"),
99+
environment_id: int = Path(..., description="环境ID")
103100
) -> JSONResponse:
104101
"""
105102
设置项目默认环境
@@ -126,10 +123,10 @@ async def create_variable(variable: VariableModel) -> JSONResponse:
126123

127124
@router.get("/variables", summary="获取变量列表")
128125
async def list_variables(
129-
scope: VariableScope,
130-
project_id: Optional[int] = Query(None, description="项目ID"),
131-
environment_id: Optional[int] = Query(None, description="环境ID"),
132-
case_id: Optional[int] = Query(None, description="用例ID")
126+
scope: VariableScope,
127+
project_id: Optional[int] = Query(None, description="项目ID"),
128+
environment_id: Optional[int] = Query(None, description="环境ID"),
129+
case_id: Optional[int] = Query(None, description="用例ID")
133130
) -> JSONResponse:
134131
"""
135132
获取变量列表
@@ -148,11 +145,11 @@ async def list_variables(
148145

149146
@router.get("/variables/{name}", summary="获取变量")
150147
async def get_variable(
151-
name: str = Path(..., description="变量名"),
152-
scope: VariableScope = Query(..., description="变量作用域"),
153-
project_id: Optional[int] = Query(None, description="项目ID"),
154-
environment_id: Optional[int] = Query(None, description="环境ID"),
155-
case_id: Optional[int] = Query(None, description="用例ID")
148+
name: str = Path(..., description="变量名"),
149+
scope: VariableScope = Query(..., description="变量作用域"),
150+
project_id: Optional[int] = Query(None, description="项目ID"),
151+
environment_id: Optional[int] = Query(None, description="环境ID"),
152+
case_id: Optional[int] = Query(None, description="用例ID")
156153
) -> JSONResponse:
157154
"""
158155
获取变量
@@ -172,11 +169,11 @@ async def get_variable(
172169

173170
@router.delete("/variables/{name}", summary="删除变量")
174171
async def delete_variable(
175-
name: str = Path(..., description="变量名"),
176-
scope: VariableScope = Query(..., description="变量作用域"),
177-
project_id: Optional[int] = Query(None, description="项目ID"),
178-
environment_id: Optional[int] = Query(None, description="环境ID"),
179-
case_id: Optional[int] = Query(None, description="用例ID")
172+
name: str = Path(..., description="变量名"),
173+
scope: VariableScope = Query(..., description="变量作用域"),
174+
project_id: Optional[int] = Query(None, description="项目ID"),
175+
environment_id: Optional[int] = Query(None, description="环境ID"),
176+
case_id: Optional[int] = Query(None, description="用例ID")
180177
) -> JSONResponse:
181178
"""
182179
删除变量
@@ -196,11 +193,11 @@ async def delete_variable(
196193

197194
@router.post("/variables/process-template", summary="处理变量模板")
198195
async def process_template(
199-
template: str = Body(..., description="模板字符串"),
200-
project_id: Optional[int] = Body(None, description="项目ID"),
201-
environment_id: Optional[int] = Body(None, description="环境ID"),
202-
case_id: Optional[int] = Body(None, description="用例ID"),
203-
temp_variables: Optional[Dict[str, Any]] = Body(None, description="临时变量")
196+
template: str = Body(..., description="模板字符串"),
197+
project_id: Optional[int] = Body(None, description="项目ID"),
198+
environment_id: Optional[int] = Body(None, description="环境ID"),
199+
case_id: Optional[int] = Body(None, description="用例ID"),
200+
temp_variables: Optional[Dict[str, Any]] = Body(None, description="临时变量")
204201
) -> JSONResponse:
205202
"""
206203
处理变量模板,替换模板中的变量引用
@@ -212,4 +209,4 @@ async def process_template(
212209
case_id=case_id,
213210
temp_variables=temp_variables
214211
)
215-
return response_base.success(data={"result": result}, msg="处理变量模板成功")
212+
return response_base.success(data={"result": result}, msg="处理变量模板成功")

backend/plugin/api_testing/api/v1/request.py

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,16 @@
44
接口请求API
55
"""
66
from typing import Any, Dict
7-
8-
from fastapi import APIRouter, Depends, File, Form, UploadFile
9-
from fastapi.responses import JSONResponse
10-
11-
from backend.common.response.response_schema import response_base
7+
from fastapi import APIRouter
128
from backend.plugin.api_testing.schema.request import ApiRequestSchema, ApiResponseSchema
139
from backend.plugin.api_testing.utils.http_client import send_request
10+
from backend.common.response.response_schema import response_base, ResponseModel, ResponseSchemaModel
1411

1512
router = APIRouter()
1613

1714

1815
@router.post("/send", response_model=Dict[str, Any], summary="发送API请求")
19-
async def send_api_request(request_data: ApiRequestSchema) -> JSONResponse:
16+
async def send_api_request(request_data: ApiRequestSchema) -> ResponseModel | ResponseSchemaModel:
2017
"""
2118
发送API请求接口
2219
@@ -30,14 +27,14 @@ async def send_api_request(request_data: ApiRequestSchema) -> JSONResponse:
3027
try:
3128
with open(file_path, "rb") as file:
3229
files[field_name] = (file_path.split("/")[-1], file.read())
33-
except Exception as e:
34-
return response_base.fail(msg=f"文件读取错误: {str(e)}")
35-
30+
except Exception as error:
31+
return response_base.fail()
32+
3633
# 处理认证信息
3734
auth = None
3835
if request_data.auth and len(request_data.auth) >= 2:
3936
auth = (request_data.auth[0], request_data.auth[1])
40-
37+
4138
# 发送请求
4239
try:
4340
response = await send_request(
@@ -51,7 +48,7 @@ async def send_api_request(request_data: ApiRequestSchema) -> JSONResponse:
5148
auth=auth,
5249
options=request_data.options
5350
)
54-
51+
5552
# 构建响应
5653
response_data = ApiResponseSchema(
5754
url=response.url,
@@ -65,7 +62,8 @@ async def send_api_request(request_data: ApiRequestSchema) -> JSONResponse:
6562
json_data=response.json_data,
6663
error=response.error
6764
)
68-
65+
6966
return response_base.success(data=response_data.model_dump())
70-
except Exception as e:
71-
return response_base.fail(msg=f"请求发送失败: {str(e)}")
67+
except Exception as error:
68+
# self._handle_exception(error)
69+
return response_base.fail()

0 commit comments

Comments
 (0)