我們swift請求URL有一個簡單的語法讓我們先看看程式碼大概長怎麼樣 /
let URL = URL(string: "你的網址")
URLSession.shared.dataTask(with: URL!) { data, response, error in
if let error = error {
print(error.localizedDescription)
}
if let response = response {
print(response)
}
let decoder = JSONDecoder()
if let data = data,
let results = try? decoder.decode(WeatherResponse.self, from: data) {
print("success")
return
}
print("error")
}.resume()
dataTask就會根據你的網址將你的需求打上去,我們有data,response,error三個變數,對應也是三個if let,第一error有錯通常是我們網址打錯或是我們網路不穩定導致連不上伺服器,第二個錯誤通常是與伺服器連接上了,但是可能傳輸的協議不一樣或是傳送時出了甚麼錯,他會將錯誤代碼顯示出來,我們再根據錯誤代碼去判斷是什麼樣子的錯誤,當前兩步驟都沒有錯的話我們將會進入第三步驟裡面,那麼恭喜你我們成功打上伺服器並且接受到他回傳的值了,如果在第三部跳出來的話那可能是有關解碼失敗,可能是你接變數的名字輸入錯
,或是解碼與伺服器所傳的方式不一樣,明天我會接一個天氣API來做個範例。