【问题标题】:Flutter Unhandled Exception: type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'List<dynamic>'Flutter 未处理的异常:类型 '_InternalLinkedHashMap<String, dynamic>' 不是类型 'List<dynamic>' 的子类型
【发布时间】:2021-04-22 06:26:14
【问题描述】:

我正在尝试从 API 获取数据,但我不断收到上述错误。 这是我的 API 响应的结构

{"cards":{"TOTAL_PERFORMED":0,"TOTAL_TO_BE_PERFORMED":0,"START_DATE":1619042400,"END_DATE":1619042400}}

这就是我尝试获取数据的方式

Future<Map<List,dynamic>>cards_daily_request()async{
    var apiUrl = "https:/s/Dashboard/cards/daily/$rvcid";
    

    var response= await http.get(Uri.encodeFull(apiUrl),headers: {"Authorization":"$token"});
    
     List data;
    var extractdata=await json.decode(response.body);
    data=await extractdata["cards"];
    print(data[0]);
    

  
  }

知道做错了什么吗?

【问题讨论】:

    标签: flutter


    【解决方案1】:

    响应是地图而不是列表 在 json 中,列表用方括号 [ ]

    定义

    检查 Json 结构 #3:简单的嵌套结构 在这篇文章中

    https://link.medium.com/XVauCvELEfb

    简而言之 您需要一个用于 json 的对象和一个用于卡的对象以及一些工厂来从 json 映射它

    【讨论】:

    • 谢谢。该链接帮助我解决了问题
    猜你喜欢
    • 2021-05-05
    • 2021-07-11
    • 2021-08-01
    • 2020-08-20
    • 2021-01-17
    • 2022-11-11
    • 2021-09-12
    • 2020-07-14
    相关资源
    最近更新 更多