Проверка прокси в Java

Проверка прокси в Java

Сегодня потребовалось реализовать функцию для проверки прокси.
Также этот пример показывает как вообще пользоваться прокси в яве.
До этого не приходилось работать с прокси в яве.

Код:

import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Proxy;
import java.net.SocketAddress;
import java.net.SocketException;
import java.net.SocketTimeoutException;
import java.net.URL;

public class CheckProxy  {
	
	static String testLink = "http://google.ru"; // указываем сайт для проверки, т.е.  
	                                             // страницу к которой будем обращаться
	                                             // через прокси
	static int timeout = 5000; // время ожидания ответа (в милисекундах)
	
	public static void main(String[] argv) {
		String proxyIP = "121.126.201.15"; // указываем адрес
		int proxyPort = 3128;              // указываем порт
		String proxyType = "HTTP";
		boolean res = check(proxyIP, proxyPort, proxyType); //вызываем функцию проверки
	}
	
	public static boolean check(String pHost, int pPort, String pType) {
		SocketAddress addr = new InetSocketAddress(pHost, pPort);
		Proxy.Type _pType = (pType.equals("HTTP") ? Proxy.Type.HTTP : Proxy.Type.SOCKS);
		Proxy httpProxy = new Proxy(_pType, addr);
		HttpURLConnection urlConn = null;
		URL url;
		try {
			url = new URL(testLink);
			urlConn = (HttpURLConnection) url.openConnection(httpProxy);
			urlConn.setConnectTimeout(timeout);
			urlConn.connect();
			return (urlConn.getResponseCode() == 200);
		}
		catch(SocketException e) {return false;}
		catch(SocketTimeoutException e) {return false;}
		catch(Exception e) {
			System.out.print("Error: " + e);
			return false;
		}
	}
}

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *