РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
155 of 307 menu

Статус HTTP_404_NOT_FOUND

Статус HTTP_404_NOT_FOUND применяется для указания того, что сервер не смог найти ресурс по запрошенному URL. Он входит в модуль fastapi.status и представляет собой целочисленную константу со значением 404. Этот статус можно передавать в параметр status_code декораторов маршрутов, а также использовать вместе с классом HTTPException для возврата клиенту сообщения об ошибке.

Синтаксис

from fastapi import status status.HTTP_404_NOT_FOUND

Пример

Давайте вернём статус HTTP_404_NOT_FOUND напрямую через параметр status_code декоратора маршрута:

from fastapi import FastAPI, status app = FastAPI() @app.get('/missing', status_code=status.HTTP_404_NOT_FOUND) def missing(): return {'detail': 'resource not found'}

Результат выполнения кода для адреса /missing:

{"detail": "resource not found"}

Пример

Давайте выбросим исключение HTTPException со статусом HTTP_404_NOT_FOUND, если пользователь не найден:

<+python+> from fastapi import FastAPI, HTTPException, status app = FastAPI() users = {'abcde': 'Alice', 'user': 'Bob'} @app.get('/user/{name}') def get_user(name: str): if name not in users: raise HTTPException( status_code=status.HTTP_404_NOT_FOUND, detail='user not found' ) return {'name': name, 'value': users[name]} <-python+>

Результат выполнения кода для адреса /user/abcde:

{"name": "abcde", "value": "Alice"}

Результат выполнения кода для адреса /user/unknown:

{"detail": "user not found"}

Пример

Давайте вернём статус HTTP_404_NOT_FOUND через объект Response, когда ресурс отсутствует:

from fastapi import FastAPI, Response, status app = FastAPI() @app.get('/article/{slug}') def get_article(slug: str, response: Response): if slug != 'article': response.status_code = status.HTTP_404_NOT_FOUND return {'detail': 'article not found'} return {'slug': slug}

Результат выполнения кода для адреса /article/article:

{"slug": "article"}

Результат выполнения кода для адреса /article/unknown:

{"detail": "article not found"}

Смотрите также

  • статус HTTP_400_BAD_REQUEST,
    который сигнализирует о некорректном запросе клиента
  • статус HTTP_403_FORBIDDEN,
    который указывает на отсутствие доступа к ресурсу
  • статус HTTP_401_UNAUTHORIZED,
    который требует аутентификации клиента
  • статус HTTP_500_INTERNAL_SERVER_ERROR,
    который сообщает о внутренней ошибке сервера
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить