作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从服务器获取 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!";
}
Unhandled Exception: type '_InternalLinkedHashMap<String, dynamic>' isnot a subtype of type 'List
最佳答案
以下是可能出错的两种常见方式:
[
{
key1: value1,
key2: value2,
key3: value3,
},
{
key1: value1,
key2: value2,
key3: value3,
},
.....
]
data[0]["name"]
,不是 data[0].name
data[0].name
data = json.decode(response.body).cast<ObjectName>();
ObjectName
可以是您想要的任何对象(内置或自定义)。但请确保它具有 name 属性 {
dataKey: [
{
key1: value1,
key2: value2,
key3: value3,
}
]
}
json.decode
将返回 map ,不是 列表Map<String, dynamic> map = json.decode(response.body);
List<dynamic> data = map["dataKey"];
print(data[0]["name"]);
关于dart - 未处理的异常 : InternalLinkedHashMap<String, 动态 >' is not a subtype of type ' 列表<动态>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55430061/
我是一名优秀的程序员,十分优秀!