|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
|
Herramientas |
#1
|
||||
|
||||
Como saber si una direccion web existe o no
Sabeis si en Android se puede detectar si una direccion url existe en un servidor?, Necesito hacer unas consultas a un servidor, funciona correctamente a no ser que al hacerlas la direccion no exista o si el servidor esta caido etc .
__________________
|
|
#2
|
||||
|
||||
Tienes que mirar los códigos de respuesta de la petición, cómo depende de qué biblioteca estés usando.
Hay varios casos, lo primero es distinguir que no pueda conectar con el servidor (y entonces no sabes si existe o no) de si conectó bien. Si conectó tendrás el código de la respuesta HTTP, 200 es que fue bien y tienes el recurso, 404 es no encontrado (no existe esa URL), 500 error interno del servidor (que no quiere decir que la URL exista o no), etc.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
|
Gracias de parte de: | ||
#3
|
||||
|
||||
No uso ninguna libreria mocelet, simplemente leo unarchivo de texto en un servidor con BufferedReader, lo que pasa es que si el servidor esta caido me lanza error
[php]BufferedReader bufferReader = new BufferedReader(new InputStreamReader(textUrl.openStream()));//... etc, etc [/php]
__________________
|
#4
|
||||
|
||||
OK, tienes que hacerlo en dos pasos, en vez de llamar a textUrl.openStream directamente, primero abre la conexión con "(HttpURLConnection) textUrl.openConnection". Asegúrate de que la variable donde lo guardas es del tipo HttpURLConnection y que haces el casting.
Si eso falla saltará una IOException que indica que ha habido un error al conectar con el servidor. Si no falla, comprueba el código de respuesta con getResponseCode, si es 200 es que todo es correcto, si es 404 es no encontrado, en fin, los códigos de respuesta de HTTP habituales. Si la respuesta es 200 y todo está bien puedes llamar al getInputStream para leer el contenido.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Última edición por mocelet Día 29/11/18 a las 08:57:07. |
Gracias de parte de: | ||
#5
|
||||
|
||||
Gracias mocelet, ahora si funciona perfectamente
__________________
|
Estás aquí | ||||||
|