图像未获得下载完成

时间:2012-06-12 09:14:51

标签: iphone ios image

在我的应用程序中,如果以JPG格式从服务器下载图像。我正在使用NSURLConnection同步下载图像。但有时一半的图像无法下载。它甚至不会抛出错误信息。

如何修复此错误。任何指南都会有所帮助。


我将图像更改为服务器上的base64并转换为设备上的图像,然后此问题就消失了。

1 个答案:

答案 0 :(得分:2)

许多人错误地使用NSURLConnection,并且不检查早期服务器断开连接。

如果服务器在向您发送Content-Length中指定的字节数之前断开连接,则不会产生错误,并且您的下载不完整。由于这个问题,我看到了你描述的同样问题。

connection:didReceiveResponse:中,您需要记住[response expectedContentLength]的值,而在connectionDidFinishLoading:中,您需要检查是否收到了这么多字节。如果没有,您可以生成自己的错误并导致下载失败。您还需要处理内容长度未知的情况(expectedContentLength将返回NSURLResponseUnknownLength)。