download method

Future download(
  1. String path,
  2. dynamic savePath, {
  3. ProgressCallback? onReceiveProgress,
  4. Map<String, dynamic>? queryParameters,
  5. CancelToken? cancelToken,
  6. bool deleteOnError = true,
  7. String lengthHeader = Headers.contentLengthHeader,
  8. dynamic data,
  9. Options? options,
})

文件下载

Implementation

Future download(
  String path,
  savePath, {
  ProgressCallback? onReceiveProgress,
  Map<String, dynamic>? queryParameters,
  CancelToken? cancelToken,
  bool deleteOnError = true,
  String lengthHeader = Headers.contentLengthHeader,
  data,
  Options? options,
}) async {
  //下载是耗时操作,超时时间久一点,默认1天
  Options requestOptions =
      options ?? Options(receiveTimeout: const Duration(days: 1));

  Response response = await dio.download(
    path.startsWith('http') ? path : baseUrl + path,
    savePath,
    onReceiveProgress: onReceiveProgress,
    queryParameters: queryParameters,
    cancelToken: cancelToken ?? _cancelToken,
    deleteOnError: deleteOnError,
    lengthHeader: lengthHeader,
    data: data,
    options: requestOptions,
  );
  return response.data;
}