Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

chrome.downloads.download ignores saveAs option and opens the dialog regardless

I'm trying to create an extension which downloads multiple files at once.

In order to accomplish that, I'm using chrome downloads api, here is the code (with AngularJS):

var fileDownloadProperties = function(raw) {
    return {
      url: "https:" + raw.url,
      filename: sharedDir + "/" + raw.name + "pdf",
      saveAs: false
    }
};
$scope.status = "";
filesToDownload.forEach(function (raw) {
  chrome.downloads.download(fileDownloadProperties(raw));
});

The problem is that when the script runs it ignores the saveAs option, and proceed with opening the save as dialog (the name and location are passed correctly, as they are the defaults in the dialog, but could be overwritten).

While it does allow me to download, it's not very useful as I can have over tens of files (and the next save dialog will open only when the previous file finished downloading!).

Is there a way to force chrome to download files silently and simultaneously? I tried other solutions (like the code below), but none seems to avoid the dialog from opening.

var a = document.createElement("a");
a.href = files[0];
a.download = files[0];
a.click();  

Any help will be greatly appreciated, thanks.

like image 886
Nadav96 Avatar asked Dec 30 '16 17:12

Nadav96


1 Answers

You can instruct your user to set Chrome settings to have

Ask where to save each file before downloading

"Save As" turned on/off.

https://lifehacker.com/make-chrome-ask-where-to-save-downloaded-files-by-chang-1790840372

like image 90
Jenna Leaf Avatar answered Nov 03 '22 01:11

Jenna Leaf