download static method

Future<DownloadTask> download(
  1. Uri url, {
  2. Map<String, String> headers = const {},
  3. Client? client,
  4. required File file,
  5. bool deleteOnCancel = true,
  6. bool deleteOnError = false,
  7. int? size,
  8. bool safeRange = false,
})

Static method to fire file downloading returns future of DownloadTask which may be used to control the request

  • headers are custom HTTP headers for client, may be used for request authentication
  • if client is null the default one will be used
  • file is download path, file will be created while downloading
  • deleteOnCancel specify if file should be deleted after download is cancelled
  • deleteOnError specify if file should be deleted when error is raised
  • size used to specify bytes end for range header
  • safeRange used to skip range header if bytes end not found

Implementation

static Future<DownloadTask> download(
  Uri url, {
  Map<String, String> headers = const {},
  http.Client? client,
  required File file,
  bool deleteOnCancel = true,
  bool deleteOnError = false,
  int? size,
  bool safeRange = false,
}) async {
  final task = DownloadTask._(
      url: url,
      headers: headers,
      client: client ?? http.Client(),
      file: file,
      deleteOnCancel: deleteOnCancel,
      deleteOnError: deleteOnError,
      size: size,
      safeRange: safeRange);
  await task.resume();
  return task;
}