Pregunta

en el iPhone Quiero comprobar si un archivo específico (test.licence) en un sitio web exsists. Mi enfoque (hasta ahora) era para descargar el archivo y comprobar si existe en mi directorio de documentos. Sin embargo, si no existe el fichero, Apache presenta una página de error HTML (que descargo en lugar de test.licence). Comprobación del tamaño del archivo es una solución difusa, ya que varía.

Así que, ¿cómo puedo comprobar si existe un archivo en línea (no más)? Estoy en busca de una solución sencilla pero limpia.

Saludos,

Stefan

¿Fue útil?

Solución

Presentar una NSURLRequest través NSURLConnection. Cuando se recibe una respuesta, comprobar si el código de estado 200 (que está ahí), 404 (no lo es) o alguna otra cosa (una cosa diferente sucedió).

Otros consejos

El código de error 404 es la forma correcta para ver si existe la página, pero si está con la intención de mostrar la página en una UIWebView, usted va a desear para comprobar si la página existe en primer lugar, y si lo hace , a continuación, se carga de nuevo dentro de la vista web (si lo hizo así en primer lugar, que le corre el riesgo de que muestra la página de error de Apache).

Con el fin de no utilizar el ancho de banda en dos ocasiones, por primera comprobación de validez para ver si existe el archivo, se puede hacer una petición HEAD, que toma sólo el encabezado HTTP y no el cuerpo de la página. Sólo tiene que añadir esto a su código (suponiendo urlRequest es de tipo NSURLRequest):

[urlRequest setHTTPMethod:@"HEAD"];
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top