开发者社区 问答 正文

AFNetworking报错,不能回调

今天在尝试用AFNetworking,但是请求貌似没有发出的样子

@interface TestAFNetworkingClient : AFHTTPClient

+ (TestAFNetworkingClient *)sharedClient;

@end

@implementation TestAFNetworkingClient

+ (TestAFNetworkingClient *)sharedClient
{
    static TestAFNetworkingClient *_sharedClient = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        _sharedClient = [[TestAFNetworkingClient alloc] initWithBaseURL:[NSURL URLWithString:@"http://example.com/"]];
    });
    
    return _sharedClient;
}

- (id)initWithBaseURL:(NSURL *)url {
    self = [super initWithBaseURL:url];
    if (!self) {
        return nil;
    }
    return self;
}
@end

@implementation TestAppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    
}
            TestAFNetworkingClient *afClient = [TestAFNetworkingClient sharedClient];
            [afClient getPath:@"testfile.txt"
                   parameters:nil
                      success:^(AFHTTPRequestOperation *operation, id responseObject) {
                      NSLog(@"Success.");
                      }
                      failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                          NSLog(@"error.");
                      }];
这个代码运行起来,貌似block里的两段代码都没有运行
我换了更简单的代码

    AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"http://baidu.com"]];
    [client getPath:@"" parameters:nil success:^(AFHTTPRequestOperation *op, id obj) {NSLog(@"success.");} failure:nil];
也是一样没效果
偶尔还会报错

 ADDRESPONSE - ADDING TO MEMORY ONLY: http://baidu.com/

展开
收起
a123456678 2016-07-20 15:00:18 2450 分享 版权
1 条回答
写回答
取消 提交回答
  • 你需要注册Operation Class.

    - (id)initWithBaseURL:(NSURL *)url {
    self = [super initWithBaseURL:url];
    if (!self) {
        [self registerHTTPOperationClass:[AFHTTPRequestOperation class]];
        return nil;
    }
    return self;
    }
    2019-07-17 19:58:53
    赞同 展开评论
问答地址: