[英]Flutter (dart) file upload, progress bar - file upload stream not give back data during upload
在文件上传到服务器时,我想显示上传状态。 在 ios,我没有来自流的信息。 我的代码(部分):
var multipartFile = await MultipartFile.fromPath("video", file);
request.files.add(multipartFile);
request.fields.addAll(queryParameterss);
print('1');
_response = await request.send();
print('2');
_response.stream.listen((value) {
print(value.last);
});
if(_response.statusCode==200){
print("Video uploaded");
}else{
print("Video upload failed");
}
控制台打印:
颤振:1
颤振:2
颤振:视频上传
颤振:49 - 这来自流
你有什么主意吗?
你可以这样解决这个问题:
final stream = await request.send();
print(stream.statusCode);
final response = await http.Response.fromStream(stream);
那么你可以像下面这样解析响应:
final jsonResponse = json.decode(response.body);
print("response is : $jsonResponse");
或者,如果它是Future<Response>
的实例,则可以立即将其分配给_response
变量,如下所示:
_response = await http.Response.fromStream(stream);
请注意,我有这样的导入:
import 'package:http/http.dart' as http;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.