postFile method

Future<ResponseModel> postFile(
  1. String path,
  2. MultipartFile data, {
  3. CancelToken? cancelToken,
  4. Map<String, dynamic> extra = const {},
})

post-file 上传文件 path 请求路径 data 请求数据 extra 自定义参数,可用于拦截器

Implementation

Future<ResponseModel> postFile(
  String path,
  MultipartFile data, {
  CancelToken? cancelToken,
  Map<String, dynamic> extra = const {},
}) async {
  dio.options.extra = extra;
  ResponseModel responseModel;
  try {
    Response response = await dio.post(
      path,
      data: FormData.fromMap({'file': data}),
      cancelToken: cancelToken,
    );
    responseModel = ResponseModel.success(response);
  } on DioError catch (error) {
    responseModel = ResponseModel.fail(error.type);
  } on Exception {
    responseModel = ResponseModel.fail();
  }

  return responseModel;
}