python - 当参数被编码时,Fastapi 的行为不同
问题描述
我是 Fastapi 的新手,我正在尝试这样实现一个新的端点:
@router.get("/{id_prevision}/x_operations",
dependencies=[Depends(app.users.current_user(active=True))],
response_model=List[PrevOpeSchema])
def list_x_operations(id_prevision: str, request: Request, response: Response,
db: Session = Depends(get_db)):
x_ope = (
db.query(PrevOpe)
.filter(
PrevOpe.id_prevision == id_prevision
and PrevOpe.flag_x is True
)
.join(Operation, Operation.id_operation == PrevOpe.id_operation)
)
results, headers = get_paginated_sql_results(request, x_ope, PrevOpe)
response.init_headers(headers)
return results
这个实现在 fastapi 浏览器界面上运行良好(只要我注释依赖行)。
但是,当我尝试此实现时,我将删除id_prevision
并对其进行编码。它不起作用。
@router.get("/x_operations/",
# dependencies=[Depends(app.users.current_user(active=True))],
response_model=List[PrevOpeSchema])
def list_x_operations(request: Request, response: Response,
db: Session = Depends(get_db)):
x_ope = (
db.query(PrevOpe)
.filter(
PrevOpe.id_prevision == "1"
and PrevOpe.flag_x is True
)
.join(Operation, Operation.id_operation == PrevOpe.id_operation)
)
results, headers = get_paginated_sql_results(request, x_ope, PrevOpe)
response.init_headers(headers)
return results
我得到401 unauthorized
回应
我试图调试问题,但 FASTapi 的短暂错误无济于事
解决方案
推荐阅读
- javascript - 在 react-bootstrap 选择输入中显示选择的 i18next 语言
- java - 将字符串对象分成标记?
- java - 如何解决警报通知问题
- reactjs - 在 Reactjs 中使用多个文件输入时如何限制选择的最大文件数?
- javascript - 交叉点观察者无法处理通过 JS 添加的元素
- c# - 排队 ConcurrentQueue 时如何修复命令串联
在unity3d c#中? - java - (JavaFX) 动态添加列。但没有添加数据
- python - 在 for 循环中绘制所有变量
- c# - BadImageFormatException - 将 C# 控制台项目与 C# Windows 窗体项目合并
- reactjs -
读取为字符串而不是因为它具有换行的功能