android - 颤振 | 流式传输的 http.client.send 突然没有收到任何响应
问题描述
这是我的方法,直到昨天一直运行良好,没有任何问题。今天突然坏了几个小时......又工作了几个小时又坏了。不知道可能出了什么问题..有人看到这种方法有问题吗?任何替代的最佳建议???
PS:互联网已连接,这是肯定的。
Future<Stream<Product>> getProducts() async {
print("Entering getProducts..");
Uri uri = Helper.getUri('api/products');
try {
final client = new http.Client();
print("Going to stream..") // --> Prints this line..
final streamedRest = await client.send(http.Request('get', uri));
print("Done streaming..") // --> Didn't print this at all...PROBLEMM
return streamedRest.stream
.transform(utf8.decoder)
.transform(json.decoder)
.map((data) => Helper.getData(data))
.expand((data) => (data as List))
.map((data) {
return Product.fromJSON(data);
});
} catch (e) {
print("Error while gathering products...product_repo");
print(CustomTrace(StackTrace.current, message: uri.toString()).toString());
return new Stream.value(new Product.fromJSON({}));
}
}
解决方案
推荐阅读
- hyperledger-fabric - hyperledger-fabric 可以在不进入docker容器的情况下获取peer节点运行状态吗?
- css - 如何编写css选择器以在给定元素之前选择元素
- json - 在数据框列中切片 JSON 的一部分
- awk - 如何修改 sed awk 命令以使用相对路径
- vue.js - 如何在文本框内放置占位符文本
- amazon-rds - 为什么我不能使用 rds connector mule 4 for aurora 创建新的数据库集群
- c# - 如何在 xamarin Forms 中创建弹出视图
- python - 通过身份验证抓取网站并使用 Google 登录
- css - bootstrap 4.4:如何重新排序列
- c# - C#在两个日期时间对象之间每隔两小时获取一次