美文网首页
关于网络请求超时处理

关于网络请求超时处理

作者: 七里汀 | 来源:发表于2016-09-25 15:17 被阅读0次

ios3.0 以后 苹果的sdk对这种情况做了调整,如果是post请求,并且设置了 httpBody,那么请求的超时时间就被默认设置为 240 秒了。于是乎,网络不稳定的时候,你的程序就可能会陷入漫长的等待

对于网络请求:一般我们大多数人使用的是AFNetWorking

Github 链接下面解释该解决方案。

https://github.com/AFNetworking/AFNetworking/issues/393

基本上,AFNetworking 不支持此功能。它是留给开发人员执行关于按个别情况如图所示下面 (取自马特 · 汤普森在 github 上的答案)

- (void)downloadFileRetryingNumberOfTimes:(NSUInteger)ntimes

success:(void (^)(id responseObject))success

failure:(void (^)(NSError *error))failure

{

if (ntimes <= 0) {

if (failure) {

NSError *error = ...;

failure(error);

}

} else {

[self getPath:@"/path/to/file" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {

if (success) {

success(...);

}

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {

[self downloadFileRetryingNumberOfTimes:ntimes - 1 success:success failure:failure];

}];

}

}

本文参考来自: http://stackoverflow.com/questions/12220986/afnetworking-how-to-setup-requests-to-be-retried-in-the-event-of-a-timeout

相关文章

  • 关于网络请求超时处理

    ios3.0 以后 苹果的sdk对这种情况做了调整,如果是post请求,并且设置了 httpBody,那么请求的超...

  • axios 设置超时时间 timeout

    全局设置网络超时 单独对某个请求设置网络超时

  • 检测网络请求超时

    问题:小程序设置超时后,有时网络不好请求不到数据,页面空白。怎么检测网络超时,对空白页面及时作出处理,提升用户体验...

  • axios请求封装,请求异常统一处理

    前端采用了 axios 来处理网络请求,为了避免在每次请求时都去判断各种各样的网络情况,比如连接超时、服务器内部错...

  • ios小知识

    1,常用网络框架默认网络请求超时时长 默认的网络请求超时时长 ASI 是10秒 苹果官方是60秒 SDWebIma...

  • cocos creator 网络http请求超时处理

    不能使用xhr.ontimeout = function (e) {// XMLHttpRequest 超时。在此...

  • AFNetWorking 取消网络请求&网络超时

    取消网络请求 网络超时 timeoutInterval 是AFNetworking本身自带的一个设置超时的键。 设...

  • uniapp请求超时处理

    一、manifest.json里面可以设置请求超时的时间,networkTimeout 这里是官方文档['http...

  • rn请求超时处理

    https://segmentfault.com/a/1190000021322450[https://segme...

  • axios的封装

    效果图: 封装包括 1.多个请求使用唯一Loading的处理。2.网络超时的处理。3.断网情况下的处理。4.去除重...

网友评论

      本文标题: 关于网络请求超时处理

      本文链接:https://www.haomeiwen.com/subject/rwxoettx.html