iOS使用AFN设置请求超时时间并做处理
来源:互联网 发布:简单的单片机设计作品 编辑:程序博客网 时间:2024/06/06 03:08
AFN设置请求超时时间
第一种:
//设置超时时间 [manager.requestSerializer willChangeValueForKey:@"timeoutInterval"]; manager.requestSerializer.timeoutInterval = 30.f; [manager.requestSerializer didChangeValueForKey:@"timeoutInterval"];
第二种:
NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];config.timeoutIntervalForRequest = 15.0;AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:config];
既然有请求超时的设置,自然也有请求超时的错误,其错误码对应如下:-1001
这时在错误中截取错误码并进行如下处理:
[manager POST:url parameters:data progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {// NSLog(@"url====%@\n返回数据%@",url,responseObject); if (result) { result(responseObject); } } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { NSLog(@"error ==%@",error); //请求超时 if (error.code == -1001) { //1、获取当前viewController UIViewController *viewController = [[CommFun singleton] getCurrentVC]; //2、隐藏加载框 [MBProgressHUD hideHUDForView:viewController.view animated:YES]; //3、弹出提示:请求超时 SHOWALERT(@"请求超时,请刷新后再试!", viewController); } }];
苹果相应的错误码如下:
enum { NSURLErrorUnknown = -1, NSURLErrorCancelled = -999, NSURLErrorBadURL = -1000, NSURLErrorTimedOut = -1001, NSURLErrorUnsupportedURL = -1002, NSURLErrorCannotFindHost = -1003, NSURLErrorCannotConnectToHost = -1004, NSURLErrorDataLengthExceedsMaximum = -1103, NSURLErrorNetworkConnectionLost = -1005, NSURLErrorDNSLookupFailed = -1006, NSURLErrorHTTPTooManyRedirects = -1007, NSURLErrorResourceUnavailable = -1008, NSURLErrorNotConnectedToInternet = -1009, NSURLErrorRedirectToNonExistentLocation = -1010, NSURLErrorBadServerResponse = -1011, NSURLErrorUserCancelledAuthentication = -1012, NSURLErrorUserAuthenticationRequired = -1013, NSURLErrorZeroByteResource = -1014, NSURLErrorCannotDecodeRawData = -1015, NSURLErrorCannotDecodeContentData = -1016, NSURLErrorCannotParseResponse = -1017, NSURLErrorInternationalRoamingOff = -1018, NSURLErrorCallIsActive = -1019, NSURLErrorDataNotAllowed = -1020, NSURLErrorRequestBodyStreamExhausted = -1021, NSURLErrorFileDoesNotExist = -1100, NSURLErrorFileIsDirectory = -1101, NSURLErrorNoPermissionsToReadFile = -1102, NSURLErrorSecureConnectionFailed = -1200, NSURLErrorServerCertificateHasBadDate = -1201, NSURLErrorServerCertificateUntrusted = -1202, NSURLErrorServerCertificateHasUnknownRoot = -1203, NSURLErrorServerCertificateNotYetValid = -1204, NSURLErrorClientCertificateRejected = -1205, NSURLErrorClientCertificateRequired = -1206, NSURLErrorCannotLoadFromNetwork = -2000, NSURLErrorCannotCreateFile = -3000, NSURLErrorCannotOpenFile = -3001, NSURLErrorCannotCloseFile = -3002, NSURLErrorCannotWriteToFile = -3003, NSURLErrorCannotRemoveFile = -3004, NSURLErrorCannotMoveFile = -3005, NSURLErrorDownloadDecodingFailedMidStream = -3006, NSURLErrorDownloadDecodingFailedToComplete = -3007}
阅读全文
2 0
- iOS使用AFN设置请求超时时间并做处理
- AFN请求超时时间
- AFN设置请求超时
- 利用AFN实时监测网络状态以及设置请求超时时间
- iOS开发---AFN设置超时(timeoutInterval)不起作用
- 设置 TOMCAT 请求超时时间
- 设置请求超时的时间
- 设置请求超时的时间
- AFNetWorking设置请求超时时间
- http 请求 超时时间设置
- iOS 开发 https问题使用AFN进行网络请求时做的一些配置
- 使用HttpURLConnection设置请求超时时间,请求超时时会导致自动重发。
- AFN 设置请求数据类型
- iOS - 简述二次封装AFN,设置请求头,https安全策略
- 设置Apache的HttpClient请求时间超时
- 设置AFNetworking网络请求的超时时间
- 设置 AFNetworking 网络请求的超时时间
- PHP请求远程地址设置超时时间
- python报错:IndentationError:expected an indented block
- 177
- pytorch 学习资料
- 深度学习动手项目汇总
- JAVA企业面试题精选 Servlet和JSP 1-10
- iOS使用AFN设置请求超时时间并做处理
- GPU学习网站
- [python3.6 flask web学习]Flask操作msql数据库
- html学习日记:div
- 类的加载机制
- 前端优化1--reflow
- 多个select的使用
- Markdown编辑器
- SQL TOP子句