我正在尝试使用dio软件包将一些pdf文件发送到服务器,但是没有任何反应。这是我的实现。当我发送请求而不添加文件时,它可以工作。通过邮递员表单数据发送请求也可以。我究竟做错了什么?在之前的尝试中,我尝试等待多部分文件,但效果不佳。我被困已经有一个星期了。帮助将不胜感激。
_sendToServer() async {
FormData formData = new FormData.fromMap(
{
"title": "from app3",
"description": "app upload test",
}
);
for(int i=0;i<pathNames.length;i++)
formData.files.add(MapEntry("files", MultipartFile.fromFileSync("${pathNames[i]}",filename: "${fileNames[i]}")));
Dio dio = Dio(
BaseOptions(
contentType: "multipart/form-data",
headers: {
"Accept":"application/json",
"Authorization": "$token",
},
),
);
// dio.interceptors.add(
// LogInterceptor(requestBody: true, request: true, responseBody: true));
try {
var response = await dio.post("http://url/api/files",
data: formData, onSendProgress: (int send, int total) {
print((send / total) * 100);
});
print(response);
} on DioError catch (e) {
if (e.response != null) {
print(e.response.data);
print(e.response.headers);
print(e.response.request);
} else {
print(e.request.headers);
print(e.message);
}
}
}