Я пишу код в swift 3 для анализа запроса в формате json в результате запроса http.SwiftyJSON parse json query
формат JSON является:
JSON: {
base = stations;
coord = {
lat = "23.9";
lon = "42.89";
};
weather = (
{
description = mist;
icon = 50n;
id = 701;
main = Mist;
},
{
description = fog;
icon = 50n;
id = 741;
main = Fog;
}
);
wind = {
deg = "222.506";
speed = "1.72";
};}
Мой код:
Alamofire.request(url).responseJSON { response in
if let a = response.result.value {
let jsonVar = JSON(a)
if let resDati = jsonVar["base"].string {
print(resDati as String) // <- OK
}
if let dati2 = jsonVar["weather"].array {
for item in dati2 {
print(" > \(item["main"])") // <- OK
}
}
} else {
print(Error.self)
}
}
Проблема заключается в "коорд" и "ветер" данных у меня есть попытка:
if let dati4 = jsonVar["wind"].array {
for item in dati4 {
print("-- \(item)")
} }
Я не могу распечатать родственников данных, чтобы «ветер» и «координировать» в формате json.
Как это разрешить.
спасибо.
Я пишу ваш код, но результат 'deg' и 'speed' равен нулю. –
Если 'jsonVar [" base "]' что-то печатает ('<- OK'), мой код должен работать. слишком. – vadian
Я добавил ваш код на мой, и в консоли он печатает «базу» и «погоду», но не «ветер», поэтому у меня есть сдвиг «let deg» и «let speed» от «if» и в консоли я вижу «ноль ноль». –