【发布时间】:2021-06-20 02:25:27
【问题描述】:
我是 Flutter 新手,正在尝试将数据放入我的应用中的列表视图中。
我从网络服务器检索到这个 json 对象结构:
{
"item_data1":
{
"index": 0,
"age": 39,
"picture": "http://placehold.it/32x32",
"name": "Sospeter",
"email": "sospeter@123.com"
},
"item_data2":
{
"index": 1,
"age": 49,
"picture": "http://placehold.it/32x32",
"name": "Eric",
"email": "mericr@123.com"
}
}
注意:键“item_data1”和“item_data2”是动态的,不能在代码中预先确定。
您可以使用以下链接获取 json:http://www.json-generator.com/api/json/get/bUAhSFmhNK?indent=2
我的意图是 dart:convert 我项目中的 json。
到目前为止,我有这个:
Future<List<User>> _getUsers() async {
var url = "http://www.json-generator.com/api/json/get/bUAhSFmhNK?indent=2"; //Obj
var data = await http.get(url);
var jsonData = json.decode(data.body);
//print(jsonData.toString()); <-- returns data
List<User> users = [];
for(var u in jsonData){ <!-- breaks
User user = User(u["index"], u["age"], u["name"], u["email"], u["picture"]);
users.add(user);
}
//print(users.length);
return users;
}
如何安全地获取“姓名”、“电子邮件”等?
我被难住了。如果能得到任何帮助,我将不胜感激:)
【问题讨论】:
-
这段代码比你的代码短一点,更简单,更安全。 stackoverflow.com/a/66766024/1737201
标签: json flutter dictionary object dart