AFNetworking和配置HTTP_ACCEPT

时间:2012-08-20 23:43:18

标签: afnetworking

AFNetworking的文档指出,您应该创建AFHTTPClient的子类,并将其用作每个Web服务的单例。

如果我在www.example.com上有2个端点,一个允许在HTTP_ACCEPT中使用'application / json',另一个需要text / html,我将在我的单例AFHTTPClient类中配置什么参数,以便它配置正确HTTP_ACCEPT值?

实施细节:

@interface MyAFHTTPClient : AFHTTPClient
+ (MyAFHTTPClient *)sharedClient;
@end

[[MyAFHTTPClient sharedClient] getPath:@"endPoint_json"
                                     parameters:nil 
                                        success:^(AFHTTPRequestOperation *operation, id responseObject) {
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}]

稍后,我需要调用html端点:

[[MyAFHTTPClient sharedClient] getPath:@"endPoint_html"
                                     parameters:nil 
                                        success:^(AFHTTPRequestOperation *operation, id responseObject) {
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}]

当服务器收到请求时,似乎这两个调用都会导致"HTTP_ACCEPT"=>"application/json"

1 个答案:

答案 0 :(得分:0)

getPath:...并且所有这些便捷方法都使用requestWithMethod:path:parameters:构造一个请求,然后将其传递给HTTPRequestOperationWithRequest:success:failure:,然后将其排入操作队列。

如果您需要对HTML等进行一次性请求,请手动执行这些步骤,而不是使用方便方法:创建请求,设置Accept(HTTP_ACCEPT)不是HTTP标头)标题为text/html,然后创建并排队操作。