次のjsonスキーマを解析しようとしています.posterは空かもしれませんし、そうでないかもしれません
{
"poster": {},
"recommends": []
}
私のデコード可能なクラスは次のとおりです。
public struct RecommendedList: Decodable {
public let poster: Poster?
public let recommends: [Recommend]
}
public struct Poster: Decodable {
public let backgroundImage: URL
public let topImage: URL
public let windowImage: URL
public let windowSkinImagePath: URL
public let deeplink: URL
public init(from decoder: Decoder) throws {
// I want a failable intializer not one that throws
}
}
私の質問は、ポスターをオプションにするにはどうすればよいですか? 私の考えでは、失敗可能な初期化子が必要でしたが、デコード可能にはスローする初期化が必要です。