Введение
В этом руководстве вы узнаете, как использовать сервер разработки в Flask для запуска вашего приложения Flask при локальной разработке. Сервер разработки предоставляет интерактивный отладчик и автоматически перезагружает код при внесении изменений. В этом руководстве вас проведут по шагам запуска сервера разработки и обработке общих проблем, которые могут возникнуть.
Примечание: вам нужно создать файл кода самостоятельно и запустить его в среде. Вы можете просмотреть статус сервиса Flask на Web 5000.
Настройка приложения Flask
Прежде чем мы сможем запустить сервер разработки, нам нужно настроить приложение Flask. Создайте новый файл Python под названием app.py и добавьте следующий код:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, Flask!'
if __name__ == "__main__":
app.run(debug=True)
В этом коде мы создаем приложение Flask и определяем маршрут, который возвращает простое сообщение "Hello, Flask!". Блок if __name__ == "__main__": гарантирует, что приложение Flask запускается только при непосредственном выполнении скрипта, а не при импорте его в качестве модуля.
Запуск сервера разработки с помощью Flask CLI
Самый простой способ запустить сервер разработки - использовать команду Flask CLI flask run. Откройте терминал или командную строку, перейдите в каталог, где находится файл app.py, и выполните следующую команду:
flask run
Это запустит сервер разработки по адресу http://localhost:5000/. Вы можете получить доступ к своему приложению Flask, открыв веб-браузер и введя этот URL-адрес.
Включение режима отладки
Для включения режима отладки, который предоставляет интерактивный отладчик и автоматически перезагружает код при внесении изменений, добавьте параметр --debug к команде flask run:
flask run --debug
Теперь любые изменения, которые вы вносите в свой код, вызовут автоматическую перезагрузку сервера разработки.
Указание файла приложения
По умолчанию Flask будет искать файл с именем app.py для запуска в качестве приложения Flask. Если у вас файл имеет другое имя или находится в другом каталоге, вы можете использовать параметр --app для указания файла приложения:
flask run --app myapp.py
Замените myapp.py именем вашего файла приложения.
Адрес уже занят
Если при попытке запустить сервер вы видите ошибку OSError с сообщением "Address already in use", это означает, что другой процесс уже использует порт 5000, который является стандартным портом для сервера разработки. Вы можете либо определить и остановить другой процесс, либо выбрать другой порт.
Для определения процесса, который использует порт 5000, вы можете использовать команду netstat или lsof. Вот примеры для Linux, macOS и Windows:
- Linux:
netstat -nlp | grep 5000
- macOS / Linux:
lsof -P -i :5000
- Windows:
-ano > netstat | findstr 5000
После того, как вы определили процесс, вы можете использовать другие инструменты операционной системы для его остановки. После остановки процесса вы должны быть able запустить сервер разработки без каких-либо проблем.
Запуск сервера разработки из Python
Кроме использования команды Flask CLI, вы также можете запустить сервер разработки из Python кода. Добавьте следующий код в конец файла app.py:
if __name__ == "__main__":
app.run(debug=True)
Теперь вы можете запустить сервер разработки, выполнив файл app.py с помощью Python:
python app.py
Это запустит сервер разработки, и вы сможете получить доступ к своему приложению Flask так же, как и раньше.
Резюме
В этом руководстве вы узнали, как использовать сервер разработки в Flask для запуска вашего приложения Flask во время локального разработки. Вы узнали, как запускать сервер разработки с помощью команды Flask CLI, включать режим отладки, указывать файл приложения и обрабатывать общие проблемы, такие как "Адрес уже занят". Вы также узнали, как запускать сервер разработки из Python кода. С помощью сервера разработки вы можете легко тестировать и отлаживать ваше приложение Flask, прежде чем развернуть его в продакшен.