Как предоставить только один из нескольких дополнительных параметров в FastAPI?Python

Программы на Python
Anonymous
Как предоставить только один из нескольких дополнительных параметров в FastAPI?

Сообщение Anonymous »

API должен служить конечной точкой, где пользователь может предоставить руководство, путь или код. Вот как должна выглядеть схема URL:

Код: Выделить всё

api/locations?code={str}&guid={str}&path={str}
Текущий код выглядит следующим образом:

Код: Выделить всё

@router.get("/api/locations")
def get_functional_locations(
guid: Optional[str] = None,
code: Optional[str] = None,
path: Optional[str] = None,
) -> Union[List[Locations], PlainTextResponse]:
if guid:
return ...

if path:
return ...

if code:
return ...

return PlainTextResponse(status_code=status.HTTP_400_BAD_REQUEST)
Есть ли другой способ предоставить несколько необязательных параметров и использовать XOR, который позволяет пользователю заполнить только один параметр?


Подробнее здесь: https://stackoverflow.com/questions/760 ... in-fastapi

Вернуться в «Python»