【发布时间】:2019-05-19 04:12:18
【问题描述】:
我必须将多部分请求连同名称值对一起发送到服务器,我的意思是 id 连同它。你能帮我如何发送 id 和多部分文件吗?
Upload() async {
var stream = new https.ByteStream(DelegatingStream.typed(Files[0].openRead()));
var length = await Files[0].length();
var stream1 = new https.ByteStream(DelegatingStream.typed(Files[1].openRead()));
var length1 = await Files[1].length();
var stream2 = new https.ByteStream(DelegatingStream.typed(Files[2].openRead()));
var length2 = await Files[2].length();
var uri = Uri.parse(openurl);
var request = new https.MultipartRequest("POST", uri);
var multipartFile1 = new https.MultipartFile('XX', stream, length,
filename: basename(Files[0].path));
var multipartFile2 = new https.MultipartFile('YY', stream1, length1,
filename: basename(Files[0].path));
var multipartFile3 = new https.MultipartFile('ZZ', stream2, length2,
filename: basename(Files[0].path));
//contentType: new MediaType('image', 'png'));
request.files.add(multipartFile1);
request.files.add(multipartFile2);
request.files.add(multipartFile3);
request.fields.addAll(other)
var response = await request.send();
print(response.statusCode);
response.stream.transform(utf8.decoder).listen((value) {
print(value);
});
}
提前致谢
萨蒂什
【问题讨论】:
-
对于 HTTP 请求,我建议使用 Dio library。它将帮助您避免标准网络库的限制。