fix: 清理调试日志,确认下载机制
根因:Chrome '下载前询问保存位置' 设置与 saveAs 冲突。 关闭该设置后下载正常。background 通过 storage.session 传 base64 并下载。
This commit is contained in:
@@ -173,15 +173,11 @@ chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
|||||||
|
|
||||||
// 下载 PPTX(从 storage 读取 base64)
|
// 下载 PPTX(从 storage 读取 base64)
|
||||||
if (message?.type === "WEB_TO_PPT_DOWNLOAD") {
|
if (message?.type === "WEB_TO_PPT_DOWNLOAD") {
|
||||||
console.log("[WebToPPT] download handler triggered");
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const stored = await chrome.storage.session.get(['pptxBase64', 'pptxFilename']);
|
const stored = await chrome.storage.session.get(['pptxBase64', 'pptxFilename']);
|
||||||
console.log('[WebToPPT] stored keys:', Object.keys(stored), 'dataLen:', stored.pptxBase64?.length);
|
|
||||||
if (!stored.pptxBase64) throw new Error('没有待下载的数据');
|
if (!stored.pptxBase64) throw new Error('没有待下载的数据');
|
||||||
const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + stored.pptxBase64;
|
const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + stored.pptxBase64;
|
||||||
console.log('[WebToPPT] calling downloads.download, url length:', dataUrl.length);
|
|
||||||
await chrome.downloads.download({ url: dataUrl, filename: stored.pptxFilename });
|
await chrome.downloads.download({ url: dataUrl, filename: stored.pptxFilename });
|
||||||
console.log('[WebToPPT] download completed');
|
|
||||||
await chrome.storage.session.remove(['pptxBase64', 'pptxFilename']);
|
await chrome.storage.session.remove(['pptxBase64', 'pptxFilename']);
|
||||||
return { ok: true };
|
return { ok: true };
|
||||||
})()
|
})()
|
||||||
|
|||||||
Reference in New Issue
Block a user