我使用AFNetworking版本0.10.x来实现iOS 4.3的兼容性。这个版本的AFNetworking不使用弧形,所以AFHTTPClient以及其他AFNetworking类都将fno-objc-arc标志应用于每个类(我项目的其余部分都在使用fno-objc-arc)。在一个函数中,我有以下代码:
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:[NSURL URLWithString:url]];
[httpClient setParameterEncoding:AFJSONParameterEncoding];
NSMutableURLRequest *urlRequest = [httpClient requestWithMethod:method
path:nil
parameters:adjustedParameters];
NSLog(@"returning: %@", urlRequest);
return urlRequest;我看到的问题是,urlRequest总是以NULL的形式返回。
我甚至用调试器完成了这段代码:

如您所见,当调试器声明url请求指向有效的内存地址时,日志将输出一个null值。我正在用Xcode 4.6.3在iOS 6.0上运行我的项目。你知道问题是什么吗?
发布于 2013-09-30 20:19:57
问题是,方法requestWithMethod:path:parameters:返回一个零请求对象,因为我将nil作为路径参数传递。我的代码应该是:
urlRequest = [httpClient requestWithMethod:method
path:@""
parameters:adjustedParameters];发布于 2013-09-29 07:16:53
尝试设置默认标题的接受返回类型。例如,在我的代码中:[client setDefaultHeader:@"Accept" value:@"text/html"]也可以是application/json,这取决于您的返回类型头。
有关更多细节,请参见here (尽管OP在上述链接中得到的响应与您的响应不同。这可能是由于ARC和非ARC之间的差异)。
https://stackoverflow.com/questions/19075365
复制相似问题