2013-07-30 33 views
1

我正在使用AFNetworking来获取JSON响应并根据它填充我的UITableView。但是,我在某些JSON响应中获取了诸如<a href='link'>之类的HTML标记。如何删除它们并在填充我的tableview单元格时获得正确的格式?使用AFNetworking从JSON响应解析HTML标记

下面是使用AFNetworking从JSON响应的tableview重新加载数据的代码 -

NSURL *url = [NSURL URLWithString:@"http://xxxxx.com/api.php?req=all"]; 

NSURLRequest *request = [NSURLRequest requestWithURL:url]; 

AFJSONRequestOperation *operation = [AFJSONRequestOperation  JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id responseObject) { 


    self.jobsArrayFromAFNetworking = [[responseObject objectForKey:@"all"]mutableCopy]; 

    [spinner stopAnimating]; 

    [self.tableView reloadData]; 

    NSLog(@"JSON RESULT %@",responseObject); 

    }failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id responseObject){ 

    NSLog(@"Request failed with error: %@, %@",error,error.userInfo); 
    }]; 

    [operation start]; 

} 
+0

我不清楚:你想从数据中去掉HTML标签,以便它们不会直接渲染到你的表格视图单元格中吗? – adpalumbo

+0

我希望html标签以正确的方式出现。间接地,我想从JSON响应到处解析这些html标签。 –

+0

所以你想呈现HTML标记,以便格式显示在你的表格视图单元格中? – adpalumbo

回答

0

你当然可以推出自己的解码器,但有在MWFeedParser一个伟大的实施剥离HTML标签和做一些很与链接有用的东西:

https://github.com/mwaterfall/MWFeedParser/blob/master/Classes/NSString%2BHTML.m

有了这个类,你可以简单地在你的表使用前请你的字符串stringByConvertingHTMLToPlainText

+0

我看到了这个。但我应该如何使用AFNetworking实现这一点?这改变了我写的整个代码。 –

+0

我刚刚阅读你的意见,澄清你想要做什么。首先,我认为在AFNetworking级别上实现NSString解析的选择可能是一个糟糕的设计。话虽如此,你可以很容易地派生你的AFHTTPClient或你的JSON响应操作来实现这一点。然后,当您想要在标签中显示链接时,请使用以下内容:https://github.com/mattt/TTTAttributedLabel –