>

iTunes API를 검색하는 데 사용되는 앱을 만들어야합니다.

그러나 어떤 라이브러리도 사용할 수 없으므로 익숙한 라이브러리와 다릅니다.

이 URL을 사용하면 소프트웨어를 통해 "Instagram"검색에 대한 첫 번째 결과를 얻게됩니다. " https://itunes.apple.com/search?entity=software&country=fr&limit=1&term=instagram "

이 코드 부분으로 결과를 얻으려고합니다 :

let url = URL(string: "https://itunes.apple.com/search?entity=software&country=fr&limit=1&term=instagram")!
URLSession.shared.dataTask(with: url) { (data, response, error) in
    guard let data = data else { return }
    do {
        let decodedResponse = try JSONDecoder().decode(iTunesResponse.self, from: data)
    } catch let error {
        print("Failed to load: \(error.localizedDescription)")
    }
}.resume()

그러나 작동하지 않으며 항상 오류가 발생합니다.

다음은 얻을 수있는 JSON입니다.

{
    "resultCount": 1,
    "results": [{
        "screenshotUrls": ["https://is2-ssl.mzstatic.com/image/thumb/Purple123/v4/e9/d2/bf/e9d2bf85-7c32-0ac3-cc1f-e7160abbb8d6/source/392x696bb.jpg"],
        ...
        "userRatingCount": 1697595
    }]
}

그리고 사용하는 모델 :

struct iTunesResponse: Decodable {
    let resultCount: Int?
    let results: [App]?
}
struct App: Decodable {
 let isGameCenterEnabled: Bool?
 let screenshotUrls: [String]?
 ...
 let userRatingCount: Int?
}

이 기능에 대한 다른 주제로 문제를 해결하려고했지만 해결할 수 없습니다.


  • 이전 haskell - 기호/공백이 아닌 문자 만 어떻게 이동할 수 있습니까?
  • 다음 regex - Dart에서 정규 표현식을 사용하여 문자열에서 하위 문자열을 찾는 방법