Ответы пользователя по тегу WSGI
  • Правильно ли я понял этот принцип работы?

    @javedimka
    Хочу сока
    тот отдаёт этот запрос серверу приложений, тот в свою очередь запускает WSGI сервер, которому передаются данные запроса

    Нет, WSGI сервер запускается один раз.
    в WSGI сервер есть обработчик, который обращается уже к самому веб-приложению

    Нет, у WSGI сервера нет зависимостей от твоего приложения.
    фреймворк получает ещё порции данных от WSGI сервера и переводит их в понятный для разработчика вид

    Нет, фреймворк не получает ещё порций данных от WSGI сервреа, он получает ровно тоже самое что и приложение без фреймворка.
    потом в приложении генерируется html страница, отдаётся WSGI серверу, тот отдаёт его обратно серверу приложений

    Нет, WSGI серверу отдаются данные в формате определённом стандартом WSGI.

    WSGI сервер это просто прослойка между "веб" сервером и питон приложением, которая позволяет не задумываться о выборе "веб" сервера и/или фреймворка, на котором будет написано приложение.

    WSGI сервер запускается один раз, с натравливанием на специальный объект, определённый стандартом WSGI, этот объект написан разработчиком приложения, или разработчиком фреймворка, если используется фреймворк. (не всегда)
    Когда с "веб" сервера приходит HTTP запрос, WSGI сервер обрабатывает этот запрос, разбирает его на структуру, определённую стандартом, и вызывает тот самый специальный объект, определённый стандартом WSGI, который делает вещи определённые стандартом WSGI, а именно - используя переданный в параметрах объект, отправляет WSGI серверу код HTTP ответа и заголовки ответа, после чего возвращает генератор, который будет возвращать тело ответа. WSGI сервер из всего этого дела варит HTTP ответ и возвращает его "веб" серверу.
    Получать заголовки и тело можно как угодно - можно делать это используя фреймворк типо джанго/flask, или же просто читать из файла.

    Просто прочти PEP:
    https://www.python.org/dev/peps/pep-3333/#environ-...
    Ответ написан
    4 комментария