AFNetworking报错,不能回调

发布于 2022-08-25 01:48:12 字数 1983 浏览 22 评论 0

今天在尝试用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/

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

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

发布评论

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

评论(1

天荒地未老 2022-09-01 01:48:12

你需要注册Operation Class.

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

}

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