URLSession
例として郵便番号から住所を取得するとします。
今回利用させて頂くAPI:http://zipcloud.ibsnet.co.jp/doc/api
※プロダクションでは!
せずにguard
などで安全に処理してください
var component = URLComponents(string: "http://zipcloud.ibsnet.co.jp/api/search")!
component.queryItems = [URLQueryItem(name: "zipcode", value: "150-0011")]
URLSession.shared.dataTask(with: component.url!) { (data, response, error) in
let json = String(data: data!, encoding: .utf8)!
print(json)
}.resume()
console
{
"message": null,
"results": [
{
"address1": "東京都",
"address2": "渋谷区",
"address3": "東",
"kana1": "トウキョウト",
"kana2": "シブヤク",
"kana3": "ヒガシ",
"prefcode": "13",
"zipcode": "1500011"
}
],
"status": 200
}
APIから取得したJSONはCodable
という機能を使って型に変換することができます。
URLSessionでもシンプルに実装できたと思います。
他のFrameworkを使う前にURLSession
の使い方を理解しておくのがおすすめです。