Как вы анализируете массив JSON с TouchJSON? - PullRequest
0 голосов
/ 21 апреля 2011

Я использую TouchJSON.Позвонил в мое приложение Rails, чтобы получить все «записи» на localhost: 3000 / posts.json.Это возвращает массив JSON, заключенный в квадратные скобки.В настоящее время я настроен на преобразование jsonString в NSDictionary, но это не удается из-за квадратных скобок.

NSString *jsonString=[self jsonFromURLString:@"http://localhost:3000/posts.json"];
    NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
    NSError *error = nil;
    self.dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:jsonData error:&error];

Как лучше всего превратить этот результат в NSArray с помощью библиотеки TouchJSON?

Error Domain=kJSONScannerErrorDomain Code=-101 "Could not scan dictionary. Dictionary that does not start with '{' character."

Ответы [ 2 ]

2 голосов
/ 21 апреля 2011

Почему бы вам просто не воспользоваться методом -deserialize:, а затем выяснить, какой у вас объект после того, как он был сделан?

Или, чтобы ответить на конкретный вопрос, используйте -deserializeAsArray:

1 голос
/ 08 июня 2011

Я думаю, что большинство парсеров недовольны данными массива. Вам придется вернуть хеш:

{'result': [Your array data]}
...