Разобрать результат JSON в NSString или аналогичные «примитивные» типы данных в RestKit - PullRequest
0 голосов
/ 06 октября 2011

Я новичок в RestKit, и мне трудно его освоить, он использует стандартное какао для анализа ответа веб-службы, но все еще чувствует себя светлым за позади .net или java ...

Во всяком случае, к делу. У меня есть веб-сервис WCF, который возвращает что-то вроде этого:

{"GetSiteMapResult":"iVBORw0KGgoAAAANSUhEUgAAB\/cAAAf3CAIAAACicn4JAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAP+lSURBVHhe7P0JoF1HcSeMS2\/X0y5ZepK8St5ly7HxgsxiB2TH"}

GetSiteMapResult, за которым следует большая строка.

Как я могу разобрать это в NSString с помощью ReskKit? Я попытался добавить сопоставление, но я не уверен, что код будет для этого, например, все примеры имеют следующий вид:

RKObjectMapping *mapping = [RKObjectMapping mappingForClass:[myClass class]];
[mapping mapKeyForPath:@"node" toAttribute:@"attributeInMyClass"];
[[RKObjectManager sharedManager].mappingProvider setMapping:mapping forKeyPath:@"RootNodeInReturnJSON"];

Но так как это объект, который я возвращаю в ответе службы, только строка, я не уверен, как это сделать.

1 Ответ

1 голос
/ 07 октября 2011

Вам не нужен RestKit для разбора такого простого ответа, более того, я думаю, RestKit не может разобрать в NSString. RestKit - реальный спасатель жизни, когда у вас есть более сложные ответы JSON. Чтобы разобрать этот ответ, я бы создал класс с одной строкой ivar и соответствующим образом отобразил ответ.

Однако я бы порекомендовал использовать JSONKit для анализа простых ответов вашего API веб-сервиса. Вы также можете взглянуть на знаменитую библиотеку ASIHTTP, которая наверняка поможет вам с обработкой HTTP-связи.

...