0
我是新來的迅速和編程,我試圖解析一個JSON與Alamofire和SwiftyJSON的幫助下,如果JSON文件很簡單,我沒有問題,工作良好,但是當我有一些像詞典 - >詞典 - >陣列 - >詞典,問題開始,所以我有以下代碼:解析JSON與Alamofire問題
func performCYesterdayWeatherFetch(forSelectedCity: String)
{
let properString = forSelectedCity.addingPercentEncoding(withAllowedCharacters:NSCharacterSet.urlQueryAllowed)
Alamofire.request("http://api.apixu.com/v1/history.json?key=MY_KEY&q=\(properString!)&dt=2016-10-20").responseJSON { (response) -> Void in
guard response.result.isSuccess else
{
print("Error while fetching remote rooms: \(response.result.error)")
return
}
guard let json = response.result.value as? JSON,
let forecastJson = json["forecast"].dictionary else
{
print("YESTERDAY PROBLEM")
return
}
for item in (forecastJson["forecastday"]?.arrayValue)!
{
let day = item["day"].dictionaryObject
guard let yesterdayTempCels = day?["avgtemp_c"] as! Double?,
let yesterdayTempFahr = day?["avgtemp_f"] as! Double? else
{
return
}
MY_KEY - 真的是我的鑰匙,這個問題是不是在我沒有輸入鑰匙。
它總是在人在這裏:
guard let json = response.result.value as? JSON,
let forecastJson = json["forecast"].dictionary else
{
print("YESTERDAY PROBLEM")
return
}
他們造成JSON看起來像這樣: 薄我需要的是avgtemp_c和avgtemp_f
我在做什麼錯?
你從哪裏得到該類型的'JSON'? – EridB
我看到,在一個教程中,並從請求我得到一個JSON文件,在其他示例(其中是1陣列它的工作原理)... –
但是,必須是一個庫(也許你正在使用'SwiftyJSON')作爲JSON是不是'Alamofire'裏面的類型既沒有'iOS API's' – EridB