gpt4 book ai didi

json - Dart/Flutter - 无法从 JSON 响应分配 bool 值

转载 作者:IT王子 更新时间:2023-10-29 06:58:50 24 4
gpt4 key购买 nike

Dart/Flutter 的新手在从 JSON 响应分配 bool 值时遇到问题 - bool errornull 我得到:

断言失败: boolean 表达式不能为空

我不知道发生了什么,因为响应已正确解码并且其他字段没有问题(请查看 Logcat 输出)。

这是我的 JSON:

{
"error:":false,
"id":1,
"name":"test"
}

我的 future :

Future<dynamic> fetchData() async {
http.Response response = await http.get(Values.URL, headers: {HttpHeaders.contentTypeHeader: "application/json"});

if (response.statusCode == 200) {
debugPrint(response.body);

var body = jsonDecode(response.body);

bool error = body["error"];
var id = body["id"];
var name = body["name"];

print("bool:" + error.toString());
print("id:" + id.toString());
print("name:" + name);

if (error) {
print("no error");
} else {
print("error");
}
} else {
throw Exception("statusCode exception e");
}

和 Logcat 输出:

I/flutter: {
I/flutter: "error:":false,
I/flutter: "id":1,
I/flutter: "name":"test"
I/flutter: }
I/flutter: bool:null
I/flutter: id:1
I/flutter: name:test
I/flutter: Failed assertion: boolean expression must not be null

你能告诉我我做错了什么吗?任何帮助都感激不尽!谢谢 :)

最佳答案

感谢 Günter Zöchbauer 指出我在 JSON 结构中的愚蠢错误:

"error:":false

应该是:

"error":false

不要忘记从编码人员那里休息一下......;)

关于json - Dart/Flutter - 无法从 JSON 响应分配 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54328315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com