Не можете получить правильную строку из ответа JSON?

Почему я не могу получить правильную строку из ответа JSON?

Из приложения я делаю вызов PHP и получаю следующие данные JSON:

{«success»: 1, «session_id»: «778a6a66505b785e1130c46227d44641»}

Но когда я читаю это в приложении, session_id 140407621032752. Почему?

Вот немного моего кода:

let responseData:NSString  = NSString(data:urlData!, encoding:NSUTF8StringEncoding)!

NSLog("Response ==> %@", responseData);

let jsonData:NSDictionary = try NSJSONSerialization.JSONObjectWithData(urlData!, options:NSJSONReadingOptions.MutableContainers ) as! NSDictionary
let success:NSInteger = jsonData.valueForKey("success") as! NSInteger
let sessionId:NSString = jsonData.valueForKey("session_id") as! NSString

NSLog("Success: %ld", success)
NSLog("sessionId: %ld", sessionId)

И вот вывод при запуске:

2016-05-03 14: 15: 06.826 выполнено [10974: 4371080] Код ответа: 200
2016-05-03 14: 15: 06.826 выполнено [10974: 4371080] Response ==> {«success»: 1, «session_id»: «778a6a66505b785e1130c46227d44641»}
2016-05-03 14: 15: 06.826 пробежал [10974: 4371080] Успех: 1
2016-05-03 14: 15: 06.826 выполнено [10974: 4371080] sessionId: 140407621032752

Как вы видете session_id идет правильно. Но как я могу получить это?

1

Решение

Ваш идентификатор сессии является строкой, поэтому вы должны использовать форматировщик строки %@ для NSLog:

NSLog("sessionId: %@", sessionId)
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]