我试图从服务器获取JSON响应并将其输出到控制台。
Future<String> login() async {
var response = await http.get(
Uri.encodeFull("https://etrans.herokuapp.com/test/2"),
headers: {"Accept": "application/json"});
this.setState(() {
data = json.decode(response.body);
});
print(data[0].name);
return "Success!";
}
未处理的异常:类型“\u InternalLinkedHashMap”
原因可能是什么?
由于没有更改类型,所以它只是一个断言。
您需要使用:
映射['eventType']. cast
Map
你也可以通过这种方式来解决:
Map<String, dynamic> myMap = Map<String, dynamic>.from(/*Your Source*/ );
你可以使用new Map
以下是两种可能出错的常见方式:
>
如果你的响应是一个json对象,比如
[
{
key1: value1,
key2: value2,
key3: value3,
},
{
key1: value1,
key2: value2,
key3: value3,
},
.....
]
然后,我们使用数据[0][“name”]
,而不是数据[0]。name
除非强制转换到具有name属性的对象,否则无法使用数据[0]。名称
我们像这样强制转换data=json。解码(response.body)。铸造
ObjectName
可以是您想要的任何对象(内置或自定义)。但是要确保它有name属性
如果您的响应是JSON对象,如
{
dataKey: [
{
key1: value1,
key2: value2,
key3: value3,
}
]
}
然后
json.decode
将返回一个Map,而不是List
Map<String, dynamic> map = json.decode(response.body);
List<dynamic> data = map["dataKey"];
print(data[0]["name"]);
我想显示fetchdata函数中的数据 但它显示了这个错误: 但是当我硬编码时,它工作正常: postman中作为JSON的API输出: 模拟器功能: 超文本传输协议有什么问题吗?因为API工作正常。
我试图解析json,将其打印到控制台,然后放入ListView.builder并得到这个错误:键入'_InternalLinkedHashMap 我要怎么修? 列表数据 API服务 模型 非常感谢您的回答..................................................................................................
如何修复未经处理的异常问题:键入“\u InternalLinkedHashMap” 这是我的班级。省道锉 还有我的主菜。省道锉
我有来自API的响应文本。当我试图创建一个新的游戏从这个响应我得到一个错误: 错误:未处理的异常:“列表”类型不是“列表”类型的子类型 我在尝试使用JSON文本时遇到如下错误: 错误: 未处理的异常:“列表”类型不是“列表”类型的子类型 它指向游戏类中的这一行: 有什么建议吗?
我试图从一个API获取数据,但我一直得到上面的错误。下面是我的API响应的结构 下面是我如何获取数据的 知道我做错了什么吗?
以下是回应 模型 和 我收到此错误(未处理的异常:键入“\u InternalLinkedHashMap