Я использую протокол Decodable для декодирования некоторых json, но у меня возникла проблема:
Я получаю ответ, где долгота и широта могут быть либо целым числом (широта = 0), если к элементу не добавлены данные о геолокации, либо строкой (fx. Latitude = "25.047880"), если есть геоданные. доступный. Теперь, когда я декодирую json, я не знаю, как построить свой Struct, так как long и lat не могут быть одновременно String и Int .. Итак, я получаю ошибку декодирования при выборке элементов, где представлены оба случая.
Есть предложения о том, как это решить? Я пробовал использовать "Any" в качестве типа данных, но это не соответствует протоколу Decodable.
struct JPhoto: Decodable {
let id: String
let farm: Int
let secret: String
let server: String
let owner: String
let title: String
let latitude: String //Can both be Int and String
let longitude: String //Can both be Int and String
}