Статус HTTP_400_BAD_REQUEST
Статус HTTP_400_BAD_REQUEST из модуля fastapi.status
используется, когда клиент отправил некорректные данные:
неправильный формат, отсутствующие поля, недопустимые значения.
Код ответа 400 означает, что проблема на стороне клиента,
а не сервера. Статус передаётся в параметр status_code
декоратора маршрута или в исключение HTTPException.
Синтаксис
from fastapi import status
status.HTTP_400_BAD_REQUEST
Пример
Давайте вернём статус 400, если переданный параметр пустой:
from fastapi import FastAPI, HTTPException, status
app = FastAPI()
@app.get('/user/{name}')
def user(name: str):
if not name:
raise HTTPException(
status_code=status.HTTP_400_BAD_REQUEST,
detail='name is required'
)
return {'name': name}
Результат выполнения кода для адреса /user/:
{"detail": "name is required"}
Пример
Давайте зададим статус 400 прямо в декораторе маршрута:
<+python+>
from fastapi import FastAPI, status
app = FastAPI()
@app.post('/article', status_code=status.HTTP_400_BAD_REQUEST)
def create_article():
return {'text': 'bad request'}
<-python+>
Результат выполнения кода:
{"text": "bad request"}
Смотрите также
-
статус
HTTP_422_UNPROCESSABLE_ENTITY,
который сообщает об ошибке валидации данных -
статус
HTTP_404_NOT_FOUND,
который сообщает об отсутствии ресурса -
статус
HTTP_401_UNAUTHORIZED,
который сообщает о необходимости авторизации -
модуль
status,
который содержит все коды состояния HTTP