Как преобразовать словарь JSON в строковое значение в Swift 4 - PullRequest
0 голосов
/ 06 февраля 2019

Я новичок в Swift, и я начал работать над проектом Swift 4 с PHP-сервером.Я использую Alamofire для запросов и печатаю данные, используя print().Вот что я получаю:

{"error":false,"n":"Raghad"}

Но когда я хочу преобразовать его в строку, он возвращает "" (пусто), а когда я преобразую в логическое значение, он возвращаетзначение правильно.

Итак, как я могу это исправить?

let wJSON : JSON = JSON(response.result.value!)
print(wJSON["n"].stringValue)
print(wJSON["error"].boolValue)

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

Я изменяю responseString на responseJSON

Alamofire.request (Url !, метод: .post, параметры: par) .validate (). responseJSON {ответ в случае, если response.result.isSuccess {let wJSON: JSON = JSON (response.result.value!)

и все работает

0 голосов
/ 06 февраля 2019

Простое решение с использованием Decodable, определите структуру, которая соответствует протоколу Decodable для вашего словаря

struct Reply: Decodable {
    let error: Bool
    let n: String
}

let data = response.data
do {
    let result = try JSONDecoder().decode(Reply.self, from: data)
    print("\(result.n) \(result.error)")
} catch {
    print(error)
}
...