尝试将 Json 数据解析为模型 Class 使用可编码时出现此错误

Trying to parse Json data into model Class this getting error while using codable

正在尝试将 Json 数据解析到模型 Class“TimeSheetModel”中,但出现以下错误。

typeMismatch(Swift.String, Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "error", intValue: nil)], debugDescription: "预期解码字符串但发现字典代替。”, underlyingError: nil))

响应数据Json

{
    "code": 200,
    "message": null,
    "error": null,
    "data": {

    }
}

// 标记:- TimeSheetModel

struct TimeSheetModel: Codable {
    
    let code: Int?
    let message: String?
    let error: String?
    let timeSheetModel_Data: TimeSheetModel_Data?

    enum CodingKeys: String, CodingKey {

        case code = "code"
        case message = "message"
        case error = "error"
        case timeSheetModel_Data = "data"

    }

    init(from decoder: Decoder) throws {

        let values = try decoder.container(keyedBy: CodingKeys.self)
        code = try values.decodeIfPresent(Int.self, forKey: .code)
        message = try values.decodeIfPresent(String.self, forKey: .message)
        error = try values.decodeIfPresent(String.self, forKey: .error)
        timeSheetModel_Data = try values.decodeIfPresent(TimeSheetModel_Data.self, forKey: .timeSheetModel_Data)


    }
}

可能我必须处理 if else 编码模型中的字符串和 Int class。

如错误所述:let error: String? 错误 属性 应为 String 类型 - 但服务器 returns 为 Dictionary

您发布的 JSON 似乎有 null,但可能由于不同的 JSON 数据而显示错误 - 一个有 error 对象。