Знакомимся с Flask: минимальное приложение
Flask — это облегченная структура веб-приложений WSGI. Он разработан, чтобы сделать начало работы быстрым и легким, с возможностью масштабирования до сложных приложений. Он начинался как простая оболочка для Werkzeug и Jinja и стал одним из самых популярных фреймворков для веб-приложений Python.
Flask предлагает предложения, но не требует каких-либо зависимостей или макета проекта. Разработчик должен выбрать инструменты и библиотеки, которые он хочет использовать. Сообщество предоставляет множество расширений, которые упрощают добавление новых функций.
Затем мы создаем экземпляр этого класса. Первый аргумент — это имя модуля или пакета приложения. __name__ — это удобный ярлык, который подходит для большинства случаев. Это необходимо, чтобы Flask знал, где искать ресурсы, такие как шаблоны и статические файлы.
Затем мы используем декоратор route(), чтобы сообщить Flask, какой URL-адрес должен запускать нашу функцию.
Функция возвращает сообщение, которое мы хотим отобразить в браузере пользователя. Тип содержимого по умолчанию — HTML, поэтому HTML в строке будет отображаться браузером.
Сохраните его как hello.py или что-то подобное. Убедитесь, что вы не вызываете свое приложение flask.py, потому что это может конфликтовать с самим Flask.
Чтобы запустить приложение, используйте команду flask или python -m flask. Прежде чем вы сможете это сделать, вам нужно указать своему терминалу, с каким приложением будет работать, экспортировав переменную среды FLASK_APP:
Это запускает очень простой встроенный сервер, который достаточно хорош для тестирования, но, вероятно, не тот, который вы хотите использовать в производстве. Варианты развертывания см. В разделе «Варианты развертывания».
Теперь перейдите на 127.0.0.1:5000/, и вы должны увидеть свое приветствие hello world.
Если у вас отключен отладчик или вы доверяете пользователям в своей сети, вы можете сделать сервер общедоступным, просто добавив --host = 0.0.0.0в командную строку:
Flask предлагает предложения, но не требует каких-либо зависимостей или макета проекта. Разработчик должен выбрать инструменты и библиотеки, которые он хочет использовать. Сообщество предоставляет множество расширений, которые упрощают добавление новых функций.
Минимальное приложение
Минимальное приложение Flask выглядит примерно так:from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "<p>Hello, World!</p>"
Так что же сделал этот код?
Сначала мы импортировали класс Flask. Экземпляр этого класса будет нашим приложением WSGI.Затем мы создаем экземпляр этого класса. Первый аргумент — это имя модуля или пакета приложения. __name__ — это удобный ярлык, который подходит для большинства случаев. Это необходимо, чтобы Flask знал, где искать ресурсы, такие как шаблоны и статические файлы.
Затем мы используем декоратор route(), чтобы сообщить Flask, какой URL-адрес должен запускать нашу функцию.
Функция возвращает сообщение, которое мы хотим отобразить в браузере пользователя. Тип содержимого по умолчанию — HTML, поэтому HTML в строке будет отображаться браузером.
Сохраните его как hello.py или что-то подобное. Убедитесь, что вы не вызываете свое приложение flask.py, потому что это может конфликтовать с самим Flask.
Чтобы запустить приложение, используйте команду flask или python -m flask. Прежде чем вы сможете это сделать, вам нужно указать своему терминалу, с каким приложением будет работать, экспортировав переменную среды FLASK_APP:
bash
export FLASK_APP=hello
flask run
* Running on http://127.0.0.1:5000/
CMD
set FLASK_APP=hello
flask run
* Running on http://127.0.0.1:5000/
Powershell
$env:FLASK_APP = "hello"
flask run
* Running on http://127.0.0.1:5000/
Поведение при обнаружении приложений
В качестве ярлыка, если файл называется app.py или wsgi.py, вам не нужно устанавливать переменную среды FLASK_APP.Это запускает очень простой встроенный сервер, который достаточно хорош для тестирования, но, вероятно, не тот, который вы хотите использовать в производстве. Варианты развертывания см. В разделе «Варианты развертывания».
Теперь перейдите на 127.0.0.1:5000/, и вы должны увидеть свое приветствие hello world.
Внешний видимый сервер
Если вы запустите сервер, вы заметите, что сервер доступен только с вашего собственного компьютера, а не с любого другого в сети. Это значение по умолчанию, поскольку в режиме отладки пользователь приложения может выполнять произвольный код Python на вашем компьютере.Если у вас отключен отладчик или вы доверяете пользователям в своей сети, вы можете сделать сервер общедоступным, просто добавив --host = 0.0.0.0в командную строку:
flask run --host = 0.0.0.0
Это указывает вашей операционной системе прослушивать все общедоступные IP-адреса.