Swift 如何处理从API返回的联合类型?

Swift 如何处理从API返回的联合类型?,swift,codable,decodable,Swift,Codable,Decodable,我正在使用一个返回JSON的API,其中一个字段是union类型。如果字段有值,则其类型为number。如果没有值,则为空字符串。因此,两种可能的反应是: { "phone_number": 49238382 } { "phone_number": "" } 有没有一种简单的方法可以让它与Codable一起工作?还是我需要自己编写解码器 我也不知道哪些字段的行为会像这样。也就是说,我不知道对于空值,数字字段是返回”,还是返回null。所以我需要用一种通用的方式来处理它。把这一混乱归咎

我正在使用一个返回JSON的API,其中一个字段是union类型。如果字段有值,则其类型为
number
。如果没有值,则为空
字符串
。因此,两种可能的反应是:

{
  "phone_number": 49238382
}

{
  "phone_number": ""
}
有没有一种简单的方法可以让它与Codable一起工作?还是我需要自己编写解码器


我也不知道哪些字段的行为会像这样。也就是说,我不知道对于空值,数字字段是返回
,还是返回
null
。所以我需要用一种通用的方式来处理它。

把这一混乱归咎于服务的所有者。把这一混乱归咎于服务的所有者。