代码之家  ›  专栏  ›  技术社区  ›  El Hombre Sin Nombre

flatter-Json.decode返回不正确的Json

  •  3
  • El Hombre Sin Nombre  · 技术社区  · 7 年前

    最近,我更改了应用程序的所有JSON,以显示错误、消息和服务主体。在正文中,我有一个数据数组。在我更改JSON之前,所有人都做了如下工作:

    final responseJson = json.decode(response.body);
    

    它返回:

    [{“id”:1,“描述”:“Terreno Rio”},{“id”:2,“描述”:“Terreno Rio”

    现在我试着这样做:

    final responseJson = json.decode(response.body);
    print(json.encode(responseJson));
    

    返回:

    [{“代码”:0,“消息”:“”“正文”:[{“id”:1,“描述”:“Terreno” 里约“},{“id”:2,“描述”:“Terreno Asier”}]]

    2 回复  |  直到 7 年前
        1
  •  1
  •   Jon Doe    7 年前

    {“代码”:0,“消息”:“”“正文”:[{“id”:1,“描述”:“Terreno”

    因此,为了解析该JSON,您可以直接访问主体:

    List list = responseJson['body'];
    

    for (Map<String, dynamic> element in list) {
        print(element);
    }
    
        2
  •  0
  •   Günter Zöchbauer    7 年前

    你得到一个 List 属于 Maps . 首先访问 列表 具有 [0] 然后是 body 返回的元素 Map 具有 ['body'] :

    var body = responseJson[0]['body'];
    print(body);