Mina - HTTP Proxy - для чего нужен AbstractHttpLogicHandler? - PullRequest
3 голосов
/ 02 августа 2010

В настоящее время я работаю над созданием простого HTTP-прокси с использованием Apache Mina, в частности org.apache.mina.proxy, и у меня есть несколько вопросов о том, как использовать некоторые компоненты.

  • Как извлечь будущий адрес из входящего HTTP-запроса? я можно увидеть, как создать ProxyConnection по URL-адресу, но я не вижу, как чтобы извлечь это из входящего запроса. Я чувствую, что это приводит на мой следующий вопрос:

  • Для чего нужен AbstractHttpLogicHandler? Я вижу, что у него есть подкласс HttpSmartProxyHandler, но я не уверен, если и как его использовать.

  • Есть ли где-нибудь пример, на который я мог бы взглянуть? Я смотрю на http://mina.apache.org/report/trunk/xref/org/apache/mina/example/proxy/, но, похоже, он не отвечает на мои вопросы выше.

Большое спасибо заранее за любую помощь.

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Я думаю, что классы в org.apache.mina.proxy - это классы для добавления прокси в вашем HTTP-запросе, а не классы, которые вы можете напрямую использовать для создания прокси.

0 голосов
/ 23 сентября 2011

О вашем втором пункте: AbstractHttpLogicHandler - это абстрактный класс, который украшает AbstractProxyLogicHandler

"AbstractHttpLogicHandler обеспечивает HTTP-кодировку запроса / ответ
функциональность декодирования "

HttpSmartProxyHandler - это конкретный класс, который расширяет AbstractProxyLogicHandler. Этот класс выполняет свой контракт, обрабатывая HTTP-ответ от прокси-сервера (путем реализации handleResponse(final HttpProxyResponse response))

...