LoginSignup
2
2

More than 5 years have passed since last update.

URLSessionを使ってGET通信【Swift】

Posted at

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の使い方を理解しておくのがおすすめです。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2