Атрибут location
Атрибут location применяется к объекту ответа
Response и содержит URL для перенаправления.
Чаще всего он используется вместе со статус-кодом
302 или 301. Значением атрибута
выступает строка с адресом, на который браузер
должен перейти.
Синтаксис
response.location = 'url'
Пример
Давайте создадим ответ с перенаправлением на
адрес '/user':
from flask import Flask, Response
app = Flask(__name__)
@app.route('/')
def index():
res = Response('redirecting', status=302)
res.location = '/user'
return res
@app.route('/user')
def user():
return 'user page'
Результат выполнения кода в заголовках ответа:
"Location: /user"
Пример
Давайте укажем полный URL перенаправления:
from flask import Flask, Response
app = Flask(__name__)
@app.route('/')
def index():
res = Response('moved', status=301)
res.location = 'https://example.com/new'
return res
Результат выполнения кода в заголовках ответа:
"Location: https://example.com/new"
Смотрите также
-
класс
Response,
который представляет HTTP-ответ во Flask -
атрибут
status_code,
который задаёт статус-код ответа -
атрибут
status,
который хранит статус ответа в виде строки -
атрибут
headers,
который содержит все заголовки ответа