No se obtiene la imagen Descarga completa

En mi aplicación si estoy descargando imágenes del servidor en formato JPG. Estoy descargando imágenes mediante NSURLConnection sincrónicamente. Pero algunas veces la mitad de la imagen no se descarga. e incluso no arroja un mensaje de error.

¿Cómo se puede arreglar este error. Cualquier guía será útil.


cambié la imagen a base64 en el servidor y la convertí a imagen en el dispositivo, luego este problema desaparece.

preguntado el 12 de junio de 12 a las 10:06

Publique el código relevante e intente descargar el mismo jpg desde su navegador:

Alternativamente, diría que haga una solicitud asíncrona y verifique los datos que ingresan con los proporcionados NSURLConnection delegar métodos. -

1 Respuestas

Muchas personas usan NSURLConnection incorrectamente y no busque una desconexión anticipada del servidor.

Si el servidor se desconecta antes de enviarle el número de bytes especificado en Content-Length, esto no producirá un error y tendrás una descarga incompleta. He visto el mismo problema que describes debido a este problema.

In connection:didReceiveResponse: necesitas recordar el valor de [response expectedContentLength] y en connectionDidFinishLoading: debe verificar que recibió esta cantidad de bytes. De lo contrario, puede generar su propio error y hacer que la descarga falle. También debe manejar el caso en el que se desconoce la longitud del contenido (expectedContentLength regresará NSURLResponseUnknownLength).

Respondido el 12 de junio de 12 a las 10:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.