Использование состояния соединения на основе Apache2 - PullRequest
0 голосов
/ 12 сентября 2009

Я пишу приложение на основе HTTPS, используя Apache2 в качестве веб-сервера и python в качестве языка (пока не знаю, какой фреймворк или мод Apache2). После того, как клиенты (которые не являются веб-браузерами) сначала устанавливают HTTPS-соединение с сервером, они должны отправить сообщение аутентификации. Если аутентификация прошла успешно, они могут отправлять больше команд, пока соединение не будет закрыто (будет использоваться HTTP 1.1 с длительным временем поддержки). Мой вопрос, возможно ли иметь состояние, связанное с соединением? Я не хочу, чтобы клиенту приходилось отправлять куки или идентификаторы сеанса - приложение HTTPS должно иметь возможность определять сеанс на основе соединения, которому принадлежит каждый запрос ... вопрос в том, как?

Ответы [ 2 ]

0 голосов
/ 13 сентября 2009

Одним из возможных решений является использование SSL_SESSION_ID, который доступен приложениям, использующим mod_python, для уникальной идентификации каждого клиента. Проблема с этим в том, что идентификатор может очевидно измениться - но мне не ясно, может ли он измениться в середине соединения (что было бы проблематично), или только между соединениями (что хорошо - я бы на самом деле необходимо обеспечить соблюдение этого поведения).

Во всяком случае, это то, что я ищу, если это не было ясно из исходного вопроса.

0 голосов
/ 12 сентября 2009

HTTP / S - это протокол без состояния, поэтому, если вы не хотите, чтобы куки поддерживали состояние, вы должны каждый раз передавать это состояние на сервер, используя скрытые переменные или параметры запроса или другие средства, и проявлять об этом на стороне сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...