1

如何在颤动中使用dio上传图像?

  void _postHttp() async {
try {
  Dio dio = Dio();
  dio.options.contentType = Headers.formUrlEncodedContentType;
  FormData formData = new FormData.fromMap({
    "file": await MultipartFile.fromFile("/Users/rogerio/Downloads/tshirt_view_kovi.jpg",
      filename: "tshirt_view_kovi.jpg"),
    "type": "checklist",
    "source": "0bef60ed-f538-4a35-b5ef-70f7dfaf510e"
  });
  Response response = await dio.post(
      "https://api.kovi.dev/docs/upload-generic",
      data: formData,
      options: Options(contentType: Headers.jsonContentType));
  print(response);
} catch (e) {
  print(e);
}

}

我的代码返回错误 502

4

1 回答 1

0

为什么将 contentType 设置为 json?它应该是多部分的:multipart/form-data。在没有任何选项的情况下尝试此代码段:

final dio = Dio();

final formData = FormData.fromMap({
  "file": await MultipartFile.fromFile(
    "/Users/rogerio/Downloads/tshirt_view_kovi.jpg",
    filename: "tshirt_view_kovi.jpg",
  ),
  "type": "checklist",
  "source": "0bef60ed-f538-4a35-b5ef-70f7dfaf510e"
});

final response = await dio.post(
  "https://api.kovi.dev/docs/upload-generic",
  data: formData
);
于 2020-01-23T05:13:56.473 回答