할 일
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
'iOS > Swift 어플 따라하기' 카테고리의 다른 글
[Swift] PlayerView가로모드/ ViewController를 띄웠을 때/preview자동플레이/재생,정지버튼 (0) | 2022.03.30 |
---|---|
[Swift] Search 결과 UICollectionView로 표현(서드파티 라이브러리 사용) (0) | 2022.03.28 |
[Swift]SearchBar 키보드 내려주기, ViewController와 해야 할 일 (2) | 2022.03.24 |
[Swift] 뮤직 앱 Seeking (0) | 2022.03.23 |
[Swift] 뮤직 플레이어, 홈화면에서 플레이어 화면 띄우기 (0) | 2022.03.22 |