android - 未处理的异常:类型“字符串”不是飞镖中“索引”错误的“int”类型的子类型
问题描述
我试图解码在我的请求后从服务器返回的 json 文件,但是当我想解码 json 时它显示错误,这是我的解码代码:
var loginJson = jsonDecode(utf8.decode(response.bodyBytes));
var model = idResponseModel(
loginJson['id'],
loginJson["fname"],
loginJson["lname"],
loginJson["nationalCode"],
loginJson["gender"],
loginJson["bornDate"],
loginJson["phoneNumber"],
loginJson["cardNumber"],
loginJson["enabled"]);
print(model.id);
控制台说它发生在loginJson['id']
来自服务器的id是这样的:
"id": "5de0a41e-9a6f-4b55-9567-024cd0fdbfc5"
解决方案
此错误意味着loginJson.[]
需要一个 int,而不是 String。所以它可能loginJson
实际上是一个 List,而不是你期望的 Map。您可以通过打印检查loginJson.runtimeType
。
推荐阅读
- mysql - 我可以在 BEFORE UPDATE 触发器中删除吗
- swift - Swift 中的动画淡入淡出
- r - 安装 tinytex::install_tinytex() 后如何解决 RMarkdown 错误
- macros - 每当我尝试用 wine 打开 jitbit 宏记录器时,它总是给我一个 Loadexception 错误。我怎样才能解决这个问题?
- sql - 如何避免重复查询?
- python - Python - eml 文件编辑
- php - 非 root 用户的 Docker 入口点
- firebase - 如何删除firebase人工验证/颤振?
- flutter - 在颤振中创建音频编译器,使用录制过程创建音频文件
- arrays - C语言上的数组函数