Чего мне не хватает, чтобы декодировать JSON bool с помощью JSONKit для IPhone - PullRequest
0 голосов
/ 12 августа 2011

У меня есть конечная точка REST, которая возвращает значение BOOL в зависимости от того, была ли операция сервера успешной.Он возвращает тело ответа просто как true или false

Когда я пытаюсь декодировать значение с сервера, я получаю следующую ошибку:

Unexpected token, wanted '{', '}', '[', ']', ',', ':', 'true', 'false', 'null', '"STRING"', 'NUMBER'.

Я пошел такнасколько, чтобы удалить ответ сервера уравнение.Теперь я просто пытаюсь заставить этот код работать:

NSString *result = @"true";
NSNumber *response = [ result objectFromJSONStringWithParseOptions:JKParseOptionNone error:&err ];
if( response == NULL )
    NSLog(@"error: %@", err.localizedDescription );
else
    NSLog( @"%d", ( int )response );

Несмотря ни на что, я все еще сталкиваюсь с моей ошибкой и распечатываю сообщение об ошибке:

Unexpected token, wanted '{', '}', '[', ']', ',', ':', 'true', 'false', 'null', '"STRING"', 'NUMBER'.

Я пропал?

Ответы [ 2 ]

0 голосов
/ 12 августа 2011

Вы устанавливаете result на NSString @"true", что не является JSON.

Скорее вы должны получить NSString *response с сервера, а затем применить objectFromJSONStringWithParseOptions:error: к нему.

Чтобы проверить действительный JSON, попробуйте http://jsonlint.com/.

0 голосов
/ 12 августа 2011

"true" не является допустимой строкой json

...