Назад к вопросам
Junior
67
questionbank

Что нужно отправить браузеру, чтобы выполнить перенаправление на другую страницу?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

HTTP-заголовок Location с URL-адресом целевой страницы и статусный код перенаправления (3xx).

Статусные коды перенаправления:

  • 301 Moved Permanently: Целевой ресурс был постоянно перемещен.
  • 302 Found: Целевой ресурс был временно перемещен.
  • 303 See Other: Браузер должен получить ресурс с другого URI, используя метод GET.
  • 307 Temporary Redirect: Целевой ресурс был временно перемещен, и браузер должен использовать тот же метод HTTP, который был использован в исходном запросе.
  • 308 Permanent Redirect: Целевой ресурс был постоянно перемещен, и браузер должен использовать тот же метод HTTP, который был использован в исходном запросе.

Пример использования во Flask:

# flask
from flask import Flask, redirect, url_for # Импорт необходимых модулей

app = Flask(__name__) # Создание экземпляра приложения Flask

@app.route('/')
def index():
    # Перенаправление на другую страницу
    return redirect(url_for('another_page'), code=302) # Используем redirect и указываем статус 302 (временное)

@app.route('/another_page')
def another_page():
    # Содержимое целевой страницы
    return "Это другая страница!" # Возвращаем простой текст

if __name__ == '__main__':
    app.run(debug=True) # Запускаем web-сервер Flask

Пример использования в Django:

# python
from django.shortcuts import redirect # Импорт функции redirect

def my_view(request):
    # Перенаправление на другую страницу
    return redirect('/another-page/', permanent=False) # Используем redirect, permanent=False означает 302 (временное)

def another_view(request):
    # Содержимое целевой страницы
    return HttpResponse("Это другая страница!") # Возвращаем HTTP-ответ