1

Swift 4 Decodable を使用するようにアプリを更新しようとしています - そして、次のような子の値を持つ JSON API からデータを取得しています:

  • 子オブジェクト
  • 文字列
  • Int

Json API の応答は次のとおりです。

var jsonoutput =
"""
{
"id": "124549",
"key": "TEST-32",
"fields": {
"lastViewed": "2018-02-17T21:40:38.864+0000",
"timeestimate": 26640
}
}
""".data(using: .utf8)

以下を使用して解析しようとしました: どちらも文字列である id プロパティと key プロパティを参照するだけで機能します。

struct SupportDeskResponse: Decodable{
    var id: String
    var key: String
    //var fields: [String: Any] //this is commented out as this approach doesn't work - just generated a decodable protocol error.            
}

var myStruct: Any!
do {
    myStruct = try JSONDecoder().decode(SupportDeskResponse.self, from: jsonoutput!) 
} catch (let error) {
    print(error)
}

print(myStruct) 

fields オブジェクトを Struct にデコードするにはどうすればよいですか?

4

1 に答える 1