iOS/Swift 어플 따라하기

[Swift] SearchAPI를 구현해 보자.

Chafle 2022. 3. 28. 16:53
반응형

할 일
1. Response, Movie structure만들기
2. struct의 프로퍼티 이름과 실제 데이터의 key 맞추기(Codable 디코딩하게 하기 위해서)
3. 파싱하고 Movie 정보 출력하기

 


 

1. Response, Movie structure만들기
2. struct의 프로퍼티 이름과 실제 데이터의 key 맞추기(Codable 디코딩하게 하기 위해서)

struct Response: Codable {

      let resultCount: Int

      let movies: [Movie]

      enum CodingKeys: String, CodingKey {

        case resultCount

        case movies = "results"

      }

    }

    struct Movie: Codable {

      let title: String

      let director: String

      let thumbnailPath: String

      let previewURL: String

      enum CodingKeys: String, CodingKey {

        case title = "trackName"

        case director = "artistName"

        case thumbnailPath = "artworkUrl100"

        case previewURL = "previewUrl"

      }

    }

 

반응형

 


3. 파싱하고 Movie 정보 출력하기

static func parseMoveies(_ data: Data) -> [Movie] {

        let decoder = JSONDecoder()   

        do {

            let response = try decoder.decode(Response.self, from: data)

            let movies = response.movies

            return movies

            

        } catch let error {

            print("-> parsing error: \(error.localizedDescription)")

            return[]

    }

}

 

 

 

지난 시간에 배운 do try catch문을 통해서 urlsession에서 쏴준 데이터를 파싱합니다.

 

https://accompani-i.tistory.com/148

 

[Swift] URLSession으로 받은 데이터를 오브젝트로 가져오기(

오늘의 목표: URLSession으로 받은 트랙리스트 오브젝트로 가져오기입니다. 할 일 1. Response, Track struct 만들기 2. struct의 프로퍼티 이름과 실제 데이터의 key 맞추기(Codable 디코딩하게 하기 위해서) 3..

accompani-i.tistory.com

 

 

 

 

반응형