2008-11-12 9 views

Respuesta

39

la solución como una prueba de unidad:

public void testURL() throws Exception { 
    String strUrl = "http://stackoverflow.com/about"; 

    try { 
     URL url = new URL(strUrl); 
     HttpURLConnection urlConn = (HttpURLConnection) url.openConnection(); 
     urlConn.connect(); 

     assertEquals(HttpURLConnection.HTTP_OK, urlConn.getResponseCode()); 
    } catch (IOException e) { 
     System.err.println("Error creating HTTP connection"); 
     e.printStackTrace(); 
     throw e; 
    } 
} 
+0

@ David: No, a menudo la gente hace preguntas que ya conocen la respuesta para, sólo para ofrecer contenidos más útiles para el SO. –

+0

Lo suficiente, discúlpate por el comentario en ese caso. Y gracias por compartir la solución, entonces ... –

+0

@ brass-kazoo Recibí conexión rechazada excepción :( – Xitrum

6

Desde java 5 Si recuerdo, la clase InetAdress contiene un método llamado isReachable(); para que pueda usarlo para hacer una implementación ping en java. También puede especificar un tiempo de espera para este método. Esta es solo otra alternativa al método de prueba unitario publicado anteriormente, que probablemente sea más eficiente.

+3

isReachable solo prueba que puede alcanzar el sitio, no es que el sitio se esté ejecutando realmente (por ejemplo, devolver 200 en lugar de 500 o similar). –

+1

Además, se requieren pruebas unitarias más para ser minuciosas, que eficientes. :-P –

-8
import org.apache.commons.validator.UrlValidator; 

public class ValidateUrlExample { 

    public static void main(String[] args) { 

     UrlValidator urlValidator = new UrlValidator(); 

     //valid URL 
     if (urlValidator.isValid("http://www.mkyong.com")) { 
      System.out.println("url is valid"); 
     } else { 
      System.out.println("url is invalid"); 
     } 

     //invalid URL 
     if (urlValidator.isValid("http://invalidURL^$&%$&^")) { 
      System.out.println("url is valid"); 
     } else { 
      System.out.println("url is invalid"); 
     } 
    } 
} 

Salida:

 
url is valid 
url is invalid 

fuente: http://www.mkyong.com/java/how-to-validate-url-in-java/

+3

-1. Esto no responde a la pregunta en absoluto: el código que ha publicado solo comprueba si la URL es válida, no si el host de esa URL es accesible o si proporciona una respuesta determinada. –

+1

Th es una respuesta engañosa -1 para eso. – Katianie

Cuestiones relacionadas