Скачать текст как файл при minifest v3
В расширении с манифестом версии 2 можно было сделать так:
function downloadText(text, filename) {
var url = URL.createObjectURL(new Blob([text], { type: 'text/plain' }))
return chrome.downloads.download({ url, filename });
}
downloadText("Hi!", "hi.txt")
Но при третьей версии происходит ошибка
Uncaught TypeError: URL.createObjectURL is not a function
at downloadText (<anonymous>:2:17)
at <anonymous>:6:1
Что следует использовать вместо этого кода? Предполагается, что объём текста значительный.
Ответы (1 шт):
Автор решения: Арсен
→ Ссылка
Из практики могу сказать, что в v3 для скачивания можете использоваться напрямую метод chrome.downloads.download()
chrome.downloads.download({
url: 'data:text/plain;charset=utf-8,' + encodeURIComponent(text),
filename: 'hi.txt',
saveAs: true
});
думаю этот метод должен сработать в вашем случае.
Есть ещё и второй метод chrome.offscreen я его не тестировал, но по документации указывает,что это тоже оптимальный метод для скачивания, там вроде создаёт другой файл и через него идёт скачивание, я не пробовал, можно и этот метод потыкать :)