如何在swift中处理不同的JSON HTTP响应

时间:2018-02-02 14:13:34

标签: json swift http struct

例如,

我在(食物,娱乐,旅行)中有一个TableView格式的类别列表。

下一个视图应该显示基于上一个视图控制器中所选类别的TableView格式的项目列表,但每个类别列表都有一组不同的JSON对象作为响应。

最好的方法是什么?

我可以创建一个struct变量数组,然后从JSON Decoder中的数组中动态地拉出一个合适的struct变量,比如JSONDecoder()。decode(structArray [0] .self,data:data!)就像那样?

我真的想避免长尾if语句......

任何帮助将不胜感激......

1 个答案:

答案 0 :(得分:0)

我假设您在选择类别时进行API调用。

您可以使用ObjectMapper库将JSON映射到您想要的合适模型对象。并且可以使用与Model Object的接口来调用基元。

您还可以将Alamofire库与AlamofireObjectMapper一起使用来进行api(JSON)调用,该调用可以直接返回映射的对象。

对象映射器中有一个StaticMappable协议,它使用对象进行映射。因此,您还可以将json(对象)中的集合(对象)映射到您自己的自定义映射类。