fix: 用 chrome.storage.session 传 base64,background 下载

This commit is contained in:
李进
2026-07-27 15:07:51 +08:00
parent 7b8b560dc0
commit 984b03c3d6
2 changed files with 13 additions and 13 deletions
+6 -3
View File
@@ -171,11 +171,14 @@ chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
return true;
}
// 下载 PPTXbase64 data URL
// 下载 PPTX从 storage 读取 base64
if (message?.type === "WEB_TO_PPT_DOWNLOAD") {
(async () => {
const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + message.base64;
await chrome.downloads.download({ url: dataUrl, filename: message.filename });
const stored = await chrome.storage.session.get(['pptxBase64', 'pptxFilename']);
if (!stored.pptxBase64) throw new Error('没有待下载的数据');
const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + stored.pptxBase64;
await chrome.downloads.download({ url: dataUrl, filename: stored.pptxFilename });
await chrome.storage.session.remove(['pptxBase64', 'pptxFilename']);
return { ok: true };
})()
.then(sendResponse)