gpt4 book ai didi

ios - 从 Amazon CDN 到 iOS 设备的频繁下载损坏/不完整的原因是什么?

转载 作者:行者123 更新时间:2023-12-01 17:00:38 25 4
gpt4 key购买 nike

我提到了 Amazon CDN 和 iOS 设备,因为我不确定哪个部分是罪魁祸首。

我在 Amazon CDN 中托管 jpg 和 PDF 文件。
我有一个 iOS 应用程序,可以在队列中下载大量 jpg 和 PDF 文件。我曾尝试使用 dataWithContentOfURL 和 ASIHttpRequest,但得到了相同的结果。 ASIHttpRequest 至少给了一个回调,表明下载有问题,所以我可以强制它重试。

但这种情况经常发生。在 100 个文件中,通常需要重新下载 1-5 个文件。如果我检查文件大小,它小于原始文件大小并且无法打开。
损坏的文件通常每次都不同。

我在不同的 ISP 和网络上试过这个。一样的。

是否有我在 Amazon CDN 中遗漏的配置,或者我在 iOS 下载中遗漏了其他配置?不建议排队下载大量文件吗?

最佳答案

我不会在 iPhone 上一次下载超过 3 或 4 个项目。不管实现限制(ASIHTTPRequest 还是不错的)或磁盘抖动的可能性,您必须为 3G 用例编写代码,除非您的应用程序明确标记(如 Info.plist 设置)它需要 Wi- Fi。
ASIHTTPRequest 中存在解决方案本身使这些操作顺序而不是并发。添加您的ASIHTTPRequest反对 ASINetworkQueue ([ASINetworkQueue queue] 返回的那个就可以了)。他们将一个接一个地被处决。

请注意,如果您遇到任何错误,默认情况下将取消队列上的所有请求,除非您设置队列的 shouldCancelAllRequestsOnFailureNO .

编辑:我刚刚注意到您已经提到使用下载队列。因此,我怀疑这在另一端比在您的设备上更成问题。连接可能由于各种原因而中断:保持事件设置太短,服务器上的资源太少,因此超时,服务器和 Internet 主干之间的某些物理链接间歇性地出现故障。不过,可以肯定的是,您可能需要在多台设备上测试您的应用程序,以确保它在所有设备上始终失败,才能真正做到这一点。

关于ios - 从 Amazon CDN 到 iOS 设备的频繁下载损坏/不完整的原因是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7199094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com