flutter - 为什么dio发布空表格数据?

问题描述 投票:4回答:1

我有一个上传图像的功能,但服务器没有收到任何东西,我得到500状态代码。我确定服务器没问题。当我从邮递员发送邮件请求时它可以工作!这是我的功能:

uploadPrescriptionToAll(File file, data) async {

  String convertedFilePath = await convertImage(file);

   String token = await getToken();

   Response response;
   Dio dio = new Dio();
   dio.options.baseUrl = "http://x.x.x.x:x";

   FormData formData = new FormData.from({
     "image":
         new UploadFileInfo(new File(convertedFilePath), "image.jpg"),
     "data": data,
   });
   try {
     response = await dio.post("/api/images",
         data: formData,
         options: Options(headers: {
           "Authorization": token,
           "Content-Type": "multipart/form-data"
         }));
   } catch (e) {
     print("Error Upload: " + e.toString());
   }
   print("Response Upload:" + response.toString());
}

如何正确发布文件(表单数据)?还有另一种方法吗?

http dart flutter form-data
1个回答
0
投票

尝试使用该文件:

 var head = {"Authorization": "Bearer ${token} "};
    var response = await dio.post(api,
          data: formData, options: Options(headers: head));

  FormData formData =  new FormData.from({"file": new UploadFileInfo(image, image.path)});
© www.soinside.com 2019 - 2024. All rights reserved.