У меня есть строка с сервера, и когда я пытаюсь преобразовать ее в NSDictionary
, я получаю "nil
". Когда я пытаюсь написать то же самое NSString
сам - все в порядке!
Я получаю строку, закодированную сервером, затем использую «AES256DecryptWithKey» из NSString+AESCrypt.h для расшифровки и получаю NSString, эту строку я конвертирую в NSData, а затем пытаюсь получить NSDictionary.
NSString *str = @"{\"error\":{\"password\":[\"Error wrong!\"]}}"; //string written by myself
NSData *jsonData = [str dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:jsonData
options:kNilOptions
error:&error];
Этот код работает, но затем я получаю эту строку с сервера - нет (
Журнал NSData (сообщение от сервера) - <7b226572 726f7222 3a7b2270 61737377 6f726422 3a5b22d0 9dd0b5d0 bfd180d0 b0d0b2d0 b8d0bbd1 8cd0bdd1 8bd0b920 656d6169 6c20d0b8 d0bbd0b8 20d0bfd0 b0d180d0 bed0bbd1 8c225d7d 7d000000>
Журнал NSData (моя строка) - <7b226572 726f7222 3a7b2270 61737377 6f726422 3a5b22d0 9dd0b5d0 bfd180d0 b0d0b2d0 b8d0bbd1 8cd0bdd1 8bd0b920 656d6169 6c20d0b8 d0bbd0b8 20d0bfd0 b0d180d0 bed0bbd1 8c225d7d 7d>
Если я ввожу строку NSLog с сервера, то это - {"error":{"password":["Ошибка ошибочна!"]}} , строка без "\"
Затем я "po &error.localizedDescription" - ошибка: адрес запрошенного выражения свойства ошибка: 1 ошибка синтаксического анализа выражения
Затем я «po error.localizedDescription» — печать описания ошибки: Error Domain = NSCocoaErrorDomain Code = 3840 «Операция не может быть завершена. (Ошибка Cocoa 3840.)» (Мусор в конце.) UserInfo = 0x7f9940497550 {NSDebugDescription = Мусор в конце.}
Что это может быть??