Как получить URL-соединение, используя прокси в Java? - PullRequest
12 голосов
/ 16 ноября 2011

Я пытаюсь создать URL-соединение, используя прокси во время выполнения.Мой код ниже:

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("192.0.2.100", 80));
HttpURLConnection connection =
    (HttpURLConnection)new URL("http://abc.example.com").openConnection(proxy);

Но это не работает.Кто-нибудь знает почему?

Ответы [ 2 ]

13 голосов
/ 19 декабря 2011

добавив ответ для помощи будущим посетителям

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("192.0.2.100", 80));
HttpURLConnection connection =(HttpURLConnection)new URL("http://abc.example.com").openConnection(proxy);
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestProperty("Content-type", "text/xml");
connection.setRequestProperty("Accept", "text/xml, application/xml");
connection.setRequestMethod("POST");
3 голосов
/ 02 декабря 2013

dku.rajkumar путь у меня не работает.

Я пытаюсь это, и это работает. Но это занимает вдвое больше времени.

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("192.0.2.100", 80));

    HttpURLConnection connection =
        (HttpURLConnection)new URL("http://abc.example.com").openConnection(proxy);
    ((HttpURLConnection)new URL("http://abc.example.com").openConnection(proxy)).getInputStream();

System.out.println(connection.usingProxy());

результат верен

без ((HttpURLConnection)new URL("http://abc.example.com").openConnection(proxy)).getInputStream();

результат ложен

...