Перенаправление на URL-адрес в колбе

Я новичок в Python и Flask, и я пытаюсь сделать эквивалент Response.redirect как в C# – то есть: перенаправить на определенный URL-адрес – как мне это сделать?

Вот мой код:

 import os from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return 'Hello World!' if __name__ == '__main__': # Bind to PORT if defined, otherwise default to 5000. port = int(os.environ.get('PORT', 5000)) app.run(host='0.0.0.0', port=port) 

    5 Solutions collect form web for “Перенаправление на URL-адрес в колбе”

    вы должны вернуть перенаправление

     import os from flask import Flask,redirect app = Flask(__name__) @app.route('/') def hello(): return redirect("http://www.example.com", code=302) if __name__ == '__main__': # Bind to PORT if defined, otherwise default to 5000. port = int(os.environ.get('PORT', 5000)) app.run(host='0.0.0.0', port=port) 

    см. документацию по фляжным документам .

    значение по умолчанию для кода 302, поэтому code=302 может быть опущен или заменен другим кодом перенаправления (один из 301, 302, 303, 305 и 307)

     #!/usr/bin/env python # -*- coding: utf-8 -*- import os from flask import Flask, redirect, url_for app = Flask(__name__) @app.route('/') def hello(): return redirect(url_for('foo')) @app.route('/foo') def foo(): return 'Hello Foo!' if __name__ == '__main__': # Bind to PORT if defined, otherwise default to 5000. port = int(os.environ.get('PORT', 5000)) app.run(host='0.0.0.0', port=port) 

    Взгляните на пример в документации .

    Из документации API фляги :

    Колба. перенаправление ( location , code=302 )

    Верните объект ответа (приложение WSGI), которое, если вызвано, перенаправляет клиента в целевое местоположение. Поддерживаемые коды: 301, 302, 303, 305 и 307. 300 не поддерживается, потому что это не реальное перенаправление и 304, потому что это ответ для запроса с запросом с определенными заголовками If-Modified-Since.

    Новое в версии 0.6 : теперь местоположение может быть строкой unicode, которая кодируется с помощью функции iri_to_uri ().

    Параметры:

    • location – местоположение, на которое должен быть перенаправлен ответ.
    • code – код статуса перенаправления. по умолчанию – 302.
     flask.redirect(location, code=302) 

    Документы можно найти здесь .

    Я считаю, что этот вопрос заслуживает обновления: просто взгляните на другие подходы и сделайте сравнения.

    Вот как вы перенаправляете (3xx) с одного URL на другой в Flask (0.12.2):

     #!/usr/bin/env python from flask import Flask, redirect app = Flask(__name__) @app.route("/") def index(): return redirect('/you_were_redirected') @app.route("/you_were_redirected") def redirected(): return "You were redirected. Congrats :)!" if __name__ == "__main__": app.run(host="0.0.0.0",port=8000,debug=True) 

    Для других официальных ссылок здесь .

     
    Interesting Posts for Van-Lav

    Сценарий Threaded Tkinter падает при создании второго виджета Toplevel

    Поиск режима списка

    Сложность времени рекурсивной функции с двумя вызовами

    Как мне удалить мою кнопку HTML, чтобы удалить правильный элемент списка из базы данных SQLite?

    Как получить URL-адрес неудачных попыток?

    Приложение для создания инсталляторов для Linux, Windows и MacOSX из одной конфигурации

    Использование Python для проверки положения мыши находится внутри круга, щелкая в любом месте круга.

    Объединить список кадровых фреймов pandas

    бесплатно установить numpy.exe с командным файлом в окнах

    не могу импортировать gdal в python?

    Использование алгоритма SlopeOne для прогнозирования, может ли геймер заполнить уровень в игре?

    Ошибка при импорте модуля cx_Oracle

    Как извлечь биты больших числовых типов данных Numpy

    Как добавить один colobar, который будет отображать данные из двух разных подплат

    «Неожиданный EOF при разборе» после утверждения «try»

    Python - лучший язык программирования в мире.