2017-11-09 9 views
0

IはjsonArrayのようなデータを持っている:Swift4 JSON解析Alamofireセット構造体

[ 
    { 
     "data1":"data1", 
     "data2":"data2", 
     "data3":"data3", 

     }, 
     { 
     "data1":"data1", 
     "data2":"data2", 
     "data3":[ 
       { 
       "data1":"data1", 
       "daya2":"data2" 
       }]   
    } 
] 

データ3は、上記のような文字列または文字列配列であってもよいです。私の構造体は次のとおりです。

struct Datas: Decodable{ 
     let data1: String? 
     let data2: String? 
     let data3: String? 
     } 

ありDATA3が文字列でも問題はありませんが、DATA3は、配列 あるとき、私はエラーを取得する「文字列をデコードするために期待されるが、代わりに、配列を発見しました。」、underlyingError:ゼロ)

私はそれを解決できません。 Data3のタイプは何ですか?どのオブジェクトも動作しません。

+1

[json swift4の構造を設定する方法は?](https://stackoverflow.com/questions/45782706/json-swift4-how-to-set-the-struct) – ivarun

答えて

0

AnyObjectではなく、代わりにAnyタイプを使用します。次に、if letを使用して配列と文字列のどちらかにキャストします。また、JSONオブジェクトの処理に役立つ便利なライブラリSwiftyJSONの使用を検討することもできます。