0
Я пытаюсь отправить запрос JSON-RPC в Swift, и я следил за этим (Perform POST request in iOS Swift).Передача в NSDictionary возвращает nil в Swift
К сожалению, я не могу бросить «результат» часть ответа на NSDictionary, делая это:
if let responseDictionary = responseObject as? NSDictionary {
if let errorDictionary = responseDictionary["error"] as? NSDictionary {
println("error logging in (bad userid/password?): \(errorDictionary)")
} else if let resultDictionary = responseDictionary["result"] as? NSDictionary {
println("successfully logged in, refer to resultDictionary for details: \(resultDictionary)")
} else {
println("we should never get here")
println("responseObject = \(responseObject)")
}
}
где responseObject является AnyObject.
Мой объект ответа выглядит следующим образом:
{
id = 1;
jsonrpc = "2.0";
result = "[{\"ID\":11,\"Name\":\"MyName\",\"LLogon\":\"2015-03-16T13:04:14\"}]";}
«result» - это не словарь, это строка. –
Как сказано в «Горячем лике», значение «результата» - это строка. Эта строка представляет собой JSON-представление словаря. Если возможно, исправьте сервер, чтобы отправить правильный ответ. В противном случае вам придется десериализовать дважды (см. Http://stackoverflow.com/questions/17283141/cannot-parsing-json-to-nsdictionary для аналогичной проблемы). –
Мы слышали, что вам нравится JSON –