Проверка URL или нет? - PullRequest
       1

Проверка URL или нет?

0 голосов
/ 26 октября 2010

Мне нужно проверить, работает ли конкретный URL или нет. Формат URL выглядит как

http://IP:port

Когда я использую java.net.URL класс, тогда я получаю java.net.SocketException или java.net.ConnectException.

Когда я пингую эти IP-адреса, я нахожу их, почему java не может их распознать?

Код, который я пишу:

URL url = new URL( urlString );
HttpURLConnection httpConn =  (HttpURLConnection)url.openConnection();
httpConn.setInstanceFollowRedirects( false );
httpConn.setRequestMethod( "HEAD" ); 
httpConn.connect();

Номер порта должен использоваться! Как я могу проверить их с помощью Java?

Ответы [ 3 ]

1 голос
/ 26 октября 2010

Отлично работает отсюда:

URL url = new URL( "http://google.com/" );
HttpURLConnection httpConn =  (HttpURLConnection)url.openConnection();
httpConn.setInstanceFollowRedirects( false );
httpConn.setRequestMethod( "HEAD" ); 
httpConn.connect();

System.out.println( "google.com : " + httpConn.getResponseCode());

или для сбоя:

URL url = new URL( "http://google.com:666/" );
HttpURLConnection httpConn =  (HttpURLConnection)url.openConnection();
httpConn.setInstanceFollowRedirects( false );
httpConn.setRequestMethod( "HEAD" ); 
try{
    httpConn.connect();
     System.out.println( "google.com : " + httpConn.getResponseCode());
}catch(java.net.ConnectException e){
     System.out.println( "google.com:666 is down ");
}
1 голос
/ 26 октября 2010

Возможно, серверы запущены и работают (отвечает на команду ping), но HTTP-сервер не прослушивает этот порт.

0 голосов
/ 26 октября 2010

Возможно, что-то еще происходит, но я обнаружил, что эта страница делает именно то, что вы хотите: http://www.rgagnon.com/javadetails/java-0059.html

Хотя у них нет номеров портов в URL.

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