dart,var bodyBytes = response.bodyBytes;,var bodyString = utf8.decode(bodyBytes);,
“ HTML Flutter http response.body 错误的 utf8 编码
单元表格:
问题 | 描述 | 解决方法 |
问题1 | 在使用 Flutter 的 http 请求时,response.body 返回的数据出现乱码 | 可以尝试使用 utf8.decode() 对 response.body 进行解码 |
问题2 | response.body 返回的数据无法正确解析为字符串 | 可以尝试将 response.body 转换为 String 类型,并指定正确的编码格式(如 utf8) |
相关问题与解答:
问题1:在使用 Flutter 的 http 请求时,response.body 返回的数据出现乱码。
解答:当使用 Flutter 的 http 请求时,response.body 返回的数据出现乱码,可以尝试使用 utf8.decode() 对 response.body 进行解码,示例代码如下:
import 'dart:convert'; import 'dart:io'; import 'package:http/http.dart' as http; Future<void> main() async { final response = await http.get('https://example.com'); if (response.statusCode == 200) { final bodyBytes = response.bodyBytes; final utf8DecodedBody = utf8.decode(bodyBytes); final bodyString = utf8DecodedBody; // 现在可以正确解析为字符串了 print(bodyString); } else { print('请求失败'); } }
问题2:response.body 返回的数据无法正确解析为字符串。
解答:当 response.body 返回的数据无法正确解析为字符串时,可以尝试将 response.body 转换为 String 类型,并指定正确的编码格式(如 utf8),示例代码如下:
import 'dart:convert'; import 'dart:io'; import 'package:http/http.dart' as http; Future<void> main() async { final response = await http.get('https://example.com'); if (response.statusCode == 200) { final bodyBytes = response.bodyBytes; final bodyString = utf8.decode(bodyBytes); // 使用 utf8 编码格式解码 bodyBytes print(bodyString); // 现在可以正确解析为字符串了 } else { print('请求失败'); } }
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。