【发布时间】:2019-06-07 08:48:10
【问题描述】:
您好,我们在 Api 管理层中使用了 codeble,我们正在尝试使用可编码和可解码的模型来设置模型,
在一种情况下,我们的响应模型中有错误,我们如何处理它
这里是示例代码
struct Address : Codable {
var street: String
var zip: String
var city: String
var error: Error
private enum CodingKeys : String, CodingKey {
case street, zip = "zip_code", city, state
}
}
我们遇到了错误
Cannot automatically synthesize 'Encodable' because 'Error' does not conform to 'Encodable'
我们如何处理编码中的错误类型?
【问题讨论】:
-
错误就是它所说的。
Error是一个协议。您无法编码/解码协议,因此您必须编写自定义init/encode方法来处理类型。 -
你的结构中可能不应该有
Error。检索Address的函数应返回Result<Address,Error> -
尝试从 json4swift.com 格式化您的数据以获取可编码。