AFNetworing2.0提供了XML数据请求格式,但是请求数据格式是NSXMLParser数据类型,需要自己处理数据.
AFNetworing请求(以get请求为例):
/**
*
* @param urlStr URL 名称
* @param params 数据字典
* @param success 请求成功返回值
* @param fail 请求失败返回值
*/
- (void)Yu_GET_XMLWithUrl:(NSString *)urlStr Params:(NSDictionary*)params success:(void (^)(id json))success fail:(void (^)(NSError *error))fail;
{
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
//设置请求格式
[manager setResponseSerializer:[AFXMLParserResponseSerializer new]];
NSString *url = [NSString stringWithFormat:@"%@",urlStr];
NSLog(@"param == %@", params);
[manager GET:url parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
if (success) {
success(responseObject);
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
if (fail) {
fail(error);
}
}];
}
愉快的可以用了呢!
[YuNetworking Yu_GET_XMLWithUrl:@"http://iuxlabs.com/iux/xbrand/api/zine-list.php" Params:nil success:^(id json) {
NSXMLParser *xmlParser = (NSXMLParser *)json;
[xmlParser setShouldProcessNamespaces:NO];
[xmlParser setShouldReportNamespacePrefixes:NO];
[xmlParser setShouldResolveExternalEntities:NO];
xmlParser.delegate = self;
bool bRet=[xmlParser parse];
NSLog(@"%ld json %@",(long)bRet,xmlParser);
} fail:^(NSError *error){
//错误
}];
然后就开始了我下一步的NSXMLPaser的调研工作
没有评论:
发表评论