I have the following issue that I\'m not sure how to handle.
My JSON
response can look like this:
{
\"data\": {
\"id\": 7,
\"
Using power of generic
, it simple like below:
struct ApiData: Decodable {
var data: T?
var error: String?
}
struct DataObject: Decodable {
private var id: Int?
var userId:Int? {
return id
}
}
Use
if let obj = try? NetworkManager.shared.decoder.decode(ApiData.self, from: data) {
//Do somthing
} else if let array = try NetworkManager.shared.decoder.decode(ApiData<[DataObject]>.self, from: data) {
// Do somthing
}