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

Метод __init__ класса RedirectResponse

Метод __init__ применяется к классу RedirectResponse и создаёт объект ответа, который сообщает браузеру о необходимости перейти на другой адрес. Первым параметром передаётся URL для перенаправления. По умолчанию используется код состояния 307, но его можно изменить через параметр status_code. Также можно передать заголовки через headers и фоновую задачу через background.

Синтаксис

RedirectResponse(url, status_code=307, headers=None, media_type=None, background=None)

Пример

Давайте создадим простое приложение, которое перенаправляет клиента с адреса '/' на адрес '/user':

from fastapi import FastAPI from fastapi.responses import RedirectResponse app = FastAPI() @app.get('/') def index(): return RedirectResponse('/user') @app.get('/user') def user(): return {'text': 'user page'}

При переходе на адрес '/' браузер автоматически перенаправится на '/user' и получит следующий ответ:

{"text": "user page"}

Пример

Давайте укажем код состояния 301 для постоянного перенаправления:

from fastapi import FastAPI from fastapi.responses import RedirectResponse app = FastAPI() @app.get('/old') def old(): return RedirectResponse('/new', status_code=301) @app.get('/new') def new(): return {'text': 'new page'}

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

<+python+> {"text": "new page"} <-python+>

Пример

Давайте добавим собственный заголовок к ответу перенаправления:

from fastapi import FastAPI from fastapi.responses import RedirectResponse app = FastAPI() @app.get('/') def index(): return RedirectResponse( '/user', headers={'X-Custom': 'abcde'} ) @app.get('/user') def user(): return {'text': 'user page'}

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

{"text": "user page"}

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

  • класс RedirectResponse,
    который создаёт ответ перенаправления
  • метод __init__,
    который инициализирует ответ перенаправления
  • атрибут status_code,
    который задаёт код состояния ответа
  • атрибут headers,
    который задаёт заголовки ответа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить