Как отправлять необработанные http-запросы в Java через прокси - PullRequest
1 голос
/ 29 января 2011

В основном я пытаюсь написать прокси для http запросов. Мне удалось довольно легко настроить сервер, и после направления моего браузера на прокси-сервер вместо прямого подключения он получает необработанные http-запросы, отправленные из браузера.

Моя проблема сейчас заключается в том, что мне нужно теперь иметь возможность отправлять необработанный запрос от прокси-сервера для получения ответа от конечного сервера. Я пытался копаться в HttpClient Apache, но, насколько я понимаю, я все еще не уверен, как его можно использовать для облегчения отправки raw запросов.

Есть предложения?

Ответы [ 2 ]

1 голос
/ 29 января 2011

Вам вообще не нужен код, поддерживающий HTTP в прокси-сервере yur, кроме распознавания команды CONNECT Остальное это просто копирование байтов назад и вперед. Для этого вы можете использовать два потока (для каждого соединения) или все это в одном потоке с NIO.

0 голосов
/ 29 января 2011

Похоже, все, что вам нужно сделать, это создать соединение с удаленным сервером. В зависимости от того, как вы перенаправили запрос браузера, вам может потребоваться реализовать поиск DNS самостоятельно. Как сказал EJP, просто скопируйте байты из одного потока в другой и скопируйте ответ обратно.

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