监听数据时出现 HttpClientResponse 错误

标签 http flutter dart httpclient

问题

我从 HttpClientResponse 得到响应之后尝试像这样执行监听:

//... your code
response.transform(utf8.decoder).listen( (data) {
   //... your code
})
//... your code

错误

The argument type 'Utf8Decoder' can't be assigned to the parameter type 'StreamTransformer<Uint8List, dynamic>'

一些额外的细节

  • Flutter 提交 4cd12fc8b
  • 之前它运行良好。

最佳答案

此实现在修复流处理中的错误后发生更改。

以下是Flutter社区提出的变更请求- https://github.com/dart-lang/sdk/issues/36900

您可以通过以下更改解决此问题

request.close().then((response){
  response.cast<List<int>>().transform(utf8.decoder).listen((content) {
        return content;
      });
});

供引用:https://github.com/dart-lang/co19/pull/384

关于监听数据时出现 HttpClientResponse 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56862020/

相关文章:

flutter - 是否支持在 Flutter 中使用 Facebook SDK?

firebase - 任务 ':app:transformClassesAndResourcesWithR8ForRelease' 执行失败。在尝试获取 flutter 应用程序的 apk 时

enums - 使用枚举语法时使用 Unicode 字符是否合适?

java - multipart/form-data 和 application-x-www-form-urlencoded 有什么区别?

HTTP 到 HTTPS 自签名证书

java - HTTP URL 连接中出现错误

ios - 无法在 vs 代码中启动 iOS 模拟器

c# - 如何使用 PHP 加密字符串将 CSharp/.NET 设为 "play nice"?

flutter - RefreshIndicator 不适用于 SingleChildScrollView 作为子项

svg - 在 google_maps_flutter Flutter 插件中使用 SVG 标记