我的项目正在使用AFNetworking.
https://github.com/AFNetworking/AFNetworking
如何拨打超时?在没有互联网连接的情况下,故障块不会触发约2分钟的感觉.等到很久......
我一直在尝试提出一种解决方案,在设备离线时使用AFNetworking对HTTP请求进行排队,因此当它重新联机时,请求就会完成.据我所知,这可以设置setReachabilityStatusChangeBlock:参数.
到目前为止,这就是我所拥有的:
// ViewController.h
@interface XYZTicketViewController : UIViewController<NSURLConnectionDelegate> // This is from before I started using AFNetworking, I'm intending to change all the requests to use AFNetworking in the near future.
@end
// ViewController.m
(...)
#import <AFHTTPRequestOperationManager.h>
#import <AFNetworkReachabilityManager.h>
(...)
@interface XYZTicketViewController ()
- (void)viewDidLoad
(...)
{
NSURL *baseURL = [NSURL URLWithString:@"http://54.213.167.202"];
AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL];
NSOperationQueue *operationQueue = manager.operationQueue;
[manager.reachabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
switch (status) {
case AFNetworkReachabilityStatusReachableViaWWAN:
case AFNetworkReachabilityStatusReachableViaWiFi:
[operationQueue setSuspended:NO];
NSLog(@"WIFI");
break;
case …Run Code Online (Sandbox Code Playgroud)