本文介绍了在Flutter中使用POST请求上传文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用发布请求将视频文件上传到我的服务器.
I'm trying to upload a video file to my server using a post request.
var file = new File(videoPath);
var uri = Uri.parse(tokenizedUri);
HttpClientRequest request = await new HttpClient().postUrl(uri);
await request.addStream(file.openRead());
var response = await request.close();
response.transform(utf8.decoder).forEach((string) {
print(string); // handle data
});
但是服务器没有得到它.为什么?
But the server doesn't get it. Why?
推荐答案
正确的方法是使用MultipartRequest:
The correct way is to use a MultipartRequest:
var uri = Uri.parse(url);
var request = new MultipartRequest("POST", uri);
var multipartFile = await MultipartFile.fromPath("package", videoPath);
request.files.add(multipartFile);
StreamedResponse response = await request.send();
response.stream.transform(utf8.decoder).listen((value) {
print(value);
});
这篇关于在Flutter中使用POST请求上传文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!