LoginSignup
0
1

More than 3 years have passed since last update.

URLセッションとは

Posted at

■URLセッションとは

APIのデータを取得する際に使う
APIのデータを取得する方法みたいな物。

■書き方

func paseRequest(urlString: String) {

let url = URL(String:urlString)

let session = URLSession(configuration: .default)

let task = session.dataTask(with:url) {(data, response, error) in

    if let error != nil {
      print(error)
     return
    }

  if let safeData = data {
     paseJSON(data:safeData)   
   }
 }
task.resume()
}

■1行づつ説明

APIのurlを引数に持たせて持ってくる。

func paseRequest(urlString:String)

引数でもってきたurlStringを使いstruct URLに入れ込み変数urlに入れ込む

let url = URL(string: urlString)

データの転送管理してくれるセッションをつくる

let session = URLSession(configuration: .default)

セッションの機能を使ってエラー処理やデータの格納などをする。
クロージャを使っている。 関数の中に関数

let task = session.dataTask(with:url) {(data, response, error) in

    if let error != nil {
      print(error)
     return
    }

  if let safeData = data {
     //データを機械に読みこむためにデコードする dataを引数として渡す
     paseJSON(data:safeData)   
   }
 }

■POINT★
クロージャは下記のメソッドを省略して書いてる。

func handle(data: Data?, response: URLResponse?, error: Error?) {

}

taskを開始する。

task.resume()

こんな感じです。

後はJSONデータをデコードするための
paseJSON(data:Data)メソッドを作ります。
他記事に記載してます。

0
1
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
0
1