¿Cómo evitar que URL.equals necesite acceso a internet en Java?
Pregunta
El método equals ()
de la clase de URL en la biblioteca de clases de Java realiza una solicitud de DNS para obtener la IP para el nombre de host, para verificar la igualdad de las dos IP. Esto sucede incluso para las URL que se crean a partir de la misma String
. ¿Hay alguna manera de evitar este acceso a internet?
Solución
Utilice java.net.URI en lugar de URL.
Otros consejos
Si solo desea comparar las cadenas de URL, intente
url1.toString().equals(url2.toString())
No use URL.equals. Como dice la documentación,
Nota: Se sabe que el comportamiento definido para
igual
es inconsistente con el alojamiento virtual en HTTP.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow