Использование прямой ссылки для скачивания в фоновом скрипте

avatar
Emu_Flock
9 августа 2021 в 00:01
63
0
0

Я делаю расширение для загружаемого изображения. Который в настоящее время я использую в качестве фонового сценария, использую прямую ссылку для скачивания, перехватываю и переименовываю ее.

const downloadLinkA = document.createElement("a");
downloadLinkA.href = givenObj.imageLink;

downloadLinkA.download = "test.png"; 

downloadLinkA.onclick = function() {
  bkg.log("clicked");
}
document.body.appendChild(downloadLinkA);
downloadLinkA.click();
bkg.log(document);
//downloadLinkA.remove();
chrome.downloads.onDeterminingFilename.addListener((downloadItem, suggest) => {
  if (downloadItem.url == givenObj.imageLink) {
    bkg.log("intercept ",givenObj, " ; ", downloadItem);
    suggest({filename: givenName, conflictAction: "uniquify"});
  }
});

gidObj — это объект со всей информацией об изображении, а GivenObj.imageLink — это прямая ссылка для скачивания.

Ссылка для скачивания A создается, я вижу в ней документ, по нему также щелкают (я вижу сообщение "щелкнул" в журнале консоли), но прямая ссылка для скачивания не активируется. Если я нажму на ссылку напрямую, она сработает или использует тот же код в сценарии содержимого.

Есть ли какой-то аспект фонового скрипта, из-за которого это не работает?

Источник

Ответы (0)