flutter - 颤振未处理的异常:类型'_InternalLinkedHashMap' 不是类型 'List 的子类型'
问题描述
我正在尝试从 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]);
}
知道做错了什么吗?
解决方案
响应是地图而不是列表 在 json 列表中,使用方括号 [ ] 定义
检查 Json 结构 #3:简单的嵌套结构在本文中
https://link.medium.com/XVauCvELEfb
简而言之,您需要一个 json 对象和一个带有一些工厂的卡对象来从 json 映射它
推荐阅读
- google-sheets - 检查部分填充的行并删除其中没有数据的行
- java - Caffeine LoadingCache - 具有自定义过期策略的驱逐
- python - 如何将 if 语句应用于带有输入的数据框?
- algorithm - 如何计算给定日期的匹配数
- python - 如何在对日期进行排序和分组时避免 Typeerror
- jenkins - Jenkins Github Pull Request Builder Plugin 引发用户身份验证错误
- jmeter - 如何在 25 个并发用户的情况下以 500 个事务/秒运行负载 10 分钟?这是在 Jmeter 中实现的有效场景吗
- android - 此版本中使用了已弃用的 Gradle 功能,使其与 Gradle 7.0 不兼容。扑
- mysql - MySQL - 匹配不搜索单个字符串
- rxjs - 如何结转在 switchmap 之前可用的值?