我正在做一个API请求,用来上传一张图片

var request = new http.MultipartRequest("POST", uri);
var response = await request.send()

在使用Flutter 翼的dart 中.然后我可以判断响应代码,例如

if (response.statusCode == 200) {
   print('ok');
}

对于其他调用,我还可以使用以下命令获取响应正文

var result = response.body;

但是,在使用request.send()时,我似乎找不到如何获得响应正文结果.

非常感谢您的任何帮助或意见,谢谢!

推荐答案

我查了request.send份文件,结果是Future<StreamedResponse>份,而不是Future<Response>

我又挖了StreamedResponse块,发现是response.stream块,是ByteStream

下面是获取字符串形式响应的方法

final response = await request.send();
final respStr = await response.stream.bytesToString();

在我看来,你应该只使用请求.如果想要流式响应而不是"收集"响应,请发送.更多关于streams in dart here

Flutter相关问答推荐

从Flutter应用程序解释蓝牙BLE数据:了解Sylvania压力值

Flutter 中的面向对象模式

如果文档确实存在,则FiRestore将";False";返回到";if-Document-Existes";...还是我说错了?

将目标平台设置为Flutter 构建

来自FutureProvider的数据只打印两个不同的变量,它们对一个实例只有一次相同的值,为什么?

来自FirebaseAuth的错误DisplayName和邮箱在Flutter应用程序中给出错误

如何让两个展开的Widget根据其子窗口的屏幕大小

Wired Firebase错误-[CLOUD_FIRESTORE/UNAvailable]该服务当前不可用

使用现有Map方法对子类克隆方法的逻辑进行Dart标准化

使用 Firebase Realtime 实现高效流式传输

使用 flutter_svg 在 flutter 中的 Canvas 上绘制 SVG 图像

尽管设置了对齐方式,如何对齐列中的行?

Flutter:我应该使用哪种应用内购买服务?

Flutter:如何在现有布局之上显示圆角布局?

为什么我们需要使用ChangeNotifierProvider而不是仅仅使用ChangeNotifier?

Flutter / 为什么当我点击我的图片时我的模型没有更新?

Flutter/Dart - 从外部类更新状态

如何修复 ICU Lexing 错误:Flutter 中的意外字符

如何在两个不同的路由(屏幕)之间正确设置 BlocProvider?

TextSpan 避免符号字符串组上的换行符