ASIHTTPRequest 错误,代码 2,在实际 iPad 上

发布于 2024-11-10 18:18:55 字数 248 浏览 3 评论 0 原文

我有一个程序,可以异步下载 4 个文件到 ipad 的 Documents 文件夹中,这在模拟器上运行得很好,但是当我在实际的 ipad 上使用它时,它会出现以下错误:

Error Domain=ASIHTTPRequestErrorDomain Code=2 “请求超时” UserInfo=0x1c0810 {NSLocalizedDescription=请求超时}

有什么办法可以解决这个问题,或者延长时间直到超时?

I have a program that asynchronously downloads 4 files into the Documents folder of an ipad, and this works perfectly on the simulator, but when I use it on an actual ipad it gives me this error:

Error Domain=ASIHTTPRequestErrorDomain Code=2 "The request timed out" UserInfo=0x1c0810 {NSLocalizedDescription=The request timed out}

Is there any way to fix this, or extend the time until time out?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

抱猫软卧 2024-11-17 18:18:55

您在模拟器中获得更好结果的原因可能是因为模拟器使用内置网卡,而您的 Mac 网卡可能比 iPad 中的网卡更强。

您可以使用以下代码来更改超时间隔。此代码将超时设置为二十秒:

[request setTimeOutSeconds:20]

根据 ASIHTTPRequest“如何使用”页面,您可以告诉 ASIHTTPRequest 重试 N 次,如下所示:

[request setNumberOfTimesToRetryOnTimeout:2];

编辑:

虽然现在是 2016 年, ASIHTTPRequest 早已被弃用,还有另一个有用的信息可以帮助诊断 iOS 设备上的网络问题。尝试使用网络链接调节器。它随 iOS 一起提供,并且可以在 macOS 上下载。

NSHipster 的这篇文章(链接)提供了一些有关设置的重要信息。

The reason why you are getting better results in the simulator is probably because the simulator uses the built in network card and your Mac's network card is likely stronger than the one in the iPad.

You can use the following code to change the timeout interval. This code will set the timeout to twenty seconds:

[request setTimeOutSeconds:20]

According to the ASIHTTPRequest "How to Use" page, you can tell ASIHTTPRequest to try again N times, like so:

[request setNumberOfTimesToRetryOnTimeout:2];

EDIT:

Although it's 2016 and ASIHTTPRequest is long since deprecated, there's another useful bit of information to help diagnose networking issues on iOS devices. Try using the Network Link Conditioner. It ships with iOS and can be downloaded on macOS.

This article (link) from NSHipster has some great information on getting set up.

踏雪无痕 2024-11-17 18:18:55

造成这个问题的原因可能有以下几个。当我们发送httprequest并且没有收到服务器的响应时,但此时您再次发送另一个httprequest,并且在第一个请求之前收到第二个请求响应。

Cause of this problem may be the following. When we send a httprequest and don't received response from server but at this time you send another httprequest again and with second request response is received before first request.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文