AFNetworking獲取數據這是我AFHTTPClient單:的XML解析錯誤
+ (API *)sharedInstance
{
static API *sharedInstance = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
sharedInstance = [[API alloc] initWithBaseURL:[NSURL URLWithString:kAPIHost]];
[sharedInstance setParameterEncoding:AFJSONParameterEncoding];
[sharedInstance registerHTTPOperationClass:[AFXMLRequestOperation class]];
[sharedInstance setDefaultHeader:@"Accept" value:@"application/rss+xml"];
});
return sharedInstance;
}
和方法在同一類(AFHTTPClient):
- (void)requestXMLDataCompletion:(JSONResponseBlock)completionBlock
{
NSMutableURLRequest *apiRequest = [self requestWithMethod:@"GET" path:kAPIPath parameters:nil];
AFXMLRequestOperation *operation = [[AFXMLRequestOperation alloc] initWithRequest:apiRequest];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject){
// success
completionBlock(responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// failure
completionBlock([NSDictionary dictionaryWithObject:[error localizedDescription] forKey:@"error"]);
}];
[operation start];
}
當我調用這個函數來從RSS我得到XML得到這個錯誤:
error = "Expected content type {(\n \"application/xml\",\n \"text/xml\"\n)}, got application/rss+xml";
問:
實施單身人士的整體概念是否良好,我是否需要任何更改?
如果整個概念錯了,有什麼建議嗎?
爲什麼我得到這個錯誤?
謝謝。
@ user1832330你修正這個錯誤? – icodebuster
我應該甚至下載這樣的XML數據還是有更簡單的方法?我的意思是,這是下載json的好方法,但不知道xml。我用AFHTTPRequestOperation以singleton和自定義方法取代了AFXMLOperation。所以我不想用AF解析數據(將使用GDataXML來完成),但這是下載數據的好方法嗎? TNX。 – user1832330
我甚至需要在NSDictionary中返回它嗎?或者我應該將整個數據作爲NSArray返回? – user1832330