【发布时间】:2021-10-13 06:29:43
【问题描述】:
我需要将收到的数据解码为 utf8。代码是这样的
Future<Products> Get Product() async {
var response = await http.get(url);
var decodedJson = json.decode(response.body);
products = Products.fromJson(decodedJson);
return products;
}
我尝试了我看到的解决方案。其中一个告诉我这样做
var response = await http.get(url,headers: {'Content-Type': 'application/json'});
var decodedJson = json.decode(utf8.decode(response.bodyBytes));
当我这样做时,我得到以下信息
errorException has occurred.
FormatException (FormatException: Missing extension byte (at offset 554))
【问题讨论】:
-
您是否从 API 获取数据?
-
您的
bodyBytes似乎不包含有效的 UTF-8。你确定你不会为你的请求设置一个字符集吗?响应中设置了什么字符集? -
@RavindraS.Patil 是的,我正在获取数据并使用它。但写的是 ''ARAÇ TEMİZLEYİCİ'' 而不是 ''ARAÇ TEMÝZLEYÝCÝ''
-
@julemand101 实际上,我不明白你的意思。我是开发人员世界的新手。字符集是什么意思?
标签: json flutter api dart utf-8