react-native-email-imap-smtp 0.3.21 → 0.3.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/module/web.js +2 -1
- package/lib/module/web.js.map +1 -1
- package/lib/typescript/server/src/imapHandler.d.ts.map +1 -1
- package/lib/typescript/src/web.d.ts.map +1 -1
- package/package.json +1 -1
- package/server/lib/imapHandler.d.ts.map +1 -1
- package/server/lib/imapHandler.js +119 -35
- package/server/lib/imapHandler.js.map +1 -1
- package/server/src/imapHandler.ts +138 -33
- package/src/web.ts +2 -1
package/lib/module/web.js
CHANGED
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
// ─── 代理服务器配置 ─────────────────────────────────────────
|
|
21
21
|
|
|
22
22
|
const DEFAULT_PROXY_URL = 'http://localhost:3987';
|
|
23
|
-
|
|
23
|
+
// 60s:附件下载可能较慢/含多个 part,15s 容易误超时
|
|
24
|
+
const API_TIMEOUT = 60000;
|
|
24
25
|
let PROXY_URL = DEFAULT_PROXY_URL;
|
|
25
26
|
let _ws = null;
|
|
26
27
|
export function setProxyUrl(url) {
|
package/lib/module/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_PROXY_URL","API_TIMEOUT","PROXY_URL","_ws","setProxyUrl","url","replace","getProxyUrl","ImapNotConnectedError","Error","constructor","name","SmtpNotConnectedError","_imapSessionId","_smtpSessionId","_proxyChecked","checkProxyOrThrow","res","fetch","signal","AbortController","ok","getImapSessionId","getSmtpSessionId","extractSession","result","success","sessionId","extractSmtpSession","arrayBufferToBase64","buf","bytes","Uint8Array","binary","i","length","String","fromCharCode","btoa","apiPost","path","body","errorMessage","controller","timer","setTimeout","abort","method","headers","JSON","stringify","text","catch","status","statusText","json","clearTimeout","imapConnect","config","imapDisconnect","sid","imapListMailboxes","imapSelectMailbox","mailbox","readOnly","imapRefreshMailbox","imapFetchFolders","imapCreateFolder","folderName","imapDeleteFolder","imapRenameFolder","oldName","newName","imapSubscribeFolder","imapUnsubscribeFolder","imapFetchEmails","options","imapFetchEmailByUID","uid","imapSearchEmails","criteria","imapMarkAsRead","uids","silent","imapMarkAsFlagged","flagged","imapMoveEmails","destinationMailbox","imapCopyEmails","imapDeleteEmails","imapExpunge","imapFetchAttachments","partId","imapFetchAllAttachments","imapIdle","callback","readyState","WebSocket","OPEN","onclose","onerror","close","wsUrl","ws","onmessage","event","data","parse","type","imapStopIdle","imapGetQuota","root","imapAppendMessage","rawMimeData","flags","smtpConnect","smtpDisconnect","smtpSendMail","processedOptions","from","to","cc","bcc","replyTo","subject","textBody","htmlBody","priority","inReplyTo","references","readReceiptTo","charset","encoding","attachments","map","att","filename","mimeType","isInline","contentId","disposition","ArrayBuffer","smtpVerifyConnection"],"sourceRoot":"..\\..\\src","sources":["web.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_PROXY_URL","API_TIMEOUT","PROXY_URL","_ws","setProxyUrl","url","replace","getProxyUrl","ImapNotConnectedError","Error","constructor","name","SmtpNotConnectedError","_imapSessionId","_smtpSessionId","_proxyChecked","checkProxyOrThrow","res","fetch","signal","AbortController","ok","getImapSessionId","getSmtpSessionId","extractSession","result","success","sessionId","extractSmtpSession","arrayBufferToBase64","buf","bytes","Uint8Array","binary","i","length","String","fromCharCode","btoa","apiPost","path","body","errorMessage","controller","timer","setTimeout","abort","method","headers","JSON","stringify","text","catch","status","statusText","json","clearTimeout","imapConnect","config","imapDisconnect","sid","imapListMailboxes","imapSelectMailbox","mailbox","readOnly","imapRefreshMailbox","imapFetchFolders","imapCreateFolder","folderName","imapDeleteFolder","imapRenameFolder","oldName","newName","imapSubscribeFolder","imapUnsubscribeFolder","imapFetchEmails","options","imapFetchEmailByUID","uid","imapSearchEmails","criteria","imapMarkAsRead","uids","silent","imapMarkAsFlagged","flagged","imapMoveEmails","destinationMailbox","imapCopyEmails","imapDeleteEmails","imapExpunge","imapFetchAttachments","partId","imapFetchAllAttachments","imapIdle","callback","readyState","WebSocket","OPEN","onclose","onerror","close","wsUrl","ws","onmessage","event","data","parse","type","imapStopIdle","imapGetQuota","root","imapAppendMessage","rawMimeData","flags","smtpConnect","smtpDisconnect","smtpSendMail","processedOptions","from","to","cc","bcc","replyTo","subject","textBody","htmlBody","priority","inReplyTo","references","readReceiptTo","charset","encoding","attachments","map","att","filename","mimeType","isInline","contentId","disposition","ArrayBuffer","smtpVerifyConnection"],"sourceRoot":"..\\..\\src","sources":["web.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imapHandler.d.ts","sourceRoot":"","sources":["../../../../server/src/imapHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"imapHandler.d.ts","sourceRoot":"","sources":["../../../../server/src/imapHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,OAAO,EACP,aAAa,EACb,MAAM,EACN,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,cAAc,EACf,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imapHandler.d.ts","sourceRoot":"","sources":["../src/imapHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"imapHandler.d.ts","sourceRoot":"","sources":["../src/imapHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -179,7 +179,7 @@ async function connect(config) {
|
|
|
179
179
|
});
|
|
180
180
|
try {
|
|
181
181
|
await client.connect();
|
|
182
|
-
sessions.set(sessionId, { client, connected: true });
|
|
182
|
+
sessions.set(sessionId, { client, connected: true, config });
|
|
183
183
|
return {
|
|
184
184
|
success: true,
|
|
185
185
|
sessionId,
|
|
@@ -372,6 +372,7 @@ async function fetchEmails(sessionId, options) {
|
|
|
372
372
|
const lock = await s.client.getMailboxLock(mailbox);
|
|
373
373
|
try {
|
|
374
374
|
const mbox = await s.client.mailboxOpen(mailbox);
|
|
375
|
+
s.currentMailbox = mailbox;
|
|
375
376
|
const total = mbox.exists ?? 0;
|
|
376
377
|
// 构建查询范围
|
|
377
378
|
let range = { seq: '1:*' };
|
|
@@ -623,12 +624,56 @@ async function expunge(sessionId) {
|
|
|
623
624
|
}
|
|
624
625
|
}
|
|
625
626
|
// ─── 附件 (使用 download API) ─────────────────────────────
|
|
627
|
+
/** 确保 IMAP 连接存活;连接已关闭则重建新 ImapFlow 实例并重新 SELECT 原邮箱。
|
|
628
|
+
* ⚠️ ImapFlow 实例只能 connect() 一次,断线后不能复用,必须 new 新实例。
|
|
629
|
+
* ⚠️ 不要用 s.client.connected 判断(该属性不存在,永远是 undefined),
|
|
630
|
+
* 要用 isClosed + state。
|
|
631
|
+
*/
|
|
632
|
+
async function ensureConnected(s) {
|
|
633
|
+
const client = s.client;
|
|
634
|
+
const alive = !client.isClosed && client.state !== client.states.LOGOUT;
|
|
635
|
+
if (alive)
|
|
636
|
+
return;
|
|
637
|
+
// 连接已关闭 → 重建新实例
|
|
638
|
+
if (!s.config) {
|
|
639
|
+
throw new Error('IMAP connection lost, but no config to reconnect');
|
|
640
|
+
}
|
|
641
|
+
const cfg = s.config;
|
|
642
|
+
console.log('[ensureConnected] reconnecting...');
|
|
643
|
+
const newClient = new imapflow_1.ImapFlow({
|
|
644
|
+
host: cfg.host,
|
|
645
|
+
port: cfg.port ?? 993,
|
|
646
|
+
secure: cfg.tls ?? true,
|
|
647
|
+
auth: {
|
|
648
|
+
user: cfg.username,
|
|
649
|
+
pass: cfg.password,
|
|
650
|
+
accessToken: cfg.accessToken,
|
|
651
|
+
},
|
|
652
|
+
connectionTimeout: cfg.timeout ?? 30000,
|
|
653
|
+
greetingTimeout: 16000,
|
|
654
|
+
tls: { rejectUnauthorized: cfg.checkCertificate ?? true },
|
|
655
|
+
logger: false,
|
|
656
|
+
});
|
|
657
|
+
await newClient.connect();
|
|
658
|
+
s.client = newClient;
|
|
659
|
+
s.connected = true;
|
|
660
|
+
// 重建后需重新选中原邮箱(download/fetch 依赖当前 mailbox)
|
|
661
|
+
if (s.currentMailbox) {
|
|
662
|
+
await newClient.mailboxOpen(s.currentMailbox);
|
|
663
|
+
}
|
|
664
|
+
console.log('[ensureConnected] reconnected, mailbox:', s.currentMailbox);
|
|
665
|
+
}
|
|
666
|
+
/** 给 Promise 加超时,避免死连接上无限挂起 */
|
|
667
|
+
function withTimeout(p, ms, label) {
|
|
668
|
+
return new Promise((resolve, reject) => {
|
|
669
|
+
const timer = setTimeout(() => reject(new Error(`${label} timeout`)), ms);
|
|
670
|
+
p.then((v) => { clearTimeout(timer); resolve(v); }, (e) => { clearTimeout(timer); reject(e); });
|
|
671
|
+
});
|
|
672
|
+
}
|
|
626
673
|
async function fetchAttachment(sessionId, uid, partId) {
|
|
627
674
|
const s = getSession(sessionId);
|
|
628
|
-
|
|
629
|
-
const download = await s.client.download(String(uid), partId, {
|
|
630
|
-
uid: true,
|
|
631
|
-
});
|
|
675
|
+
const doDownload = async () => {
|
|
676
|
+
const download = await withTimeout(s.client.download(String(uid), partId, { uid: true }), 20000, `download ${partId}`);
|
|
632
677
|
const chunks = [];
|
|
633
678
|
for await (const chunk of download.content) {
|
|
634
679
|
chunks.push(chunk);
|
|
@@ -644,45 +689,84 @@ async function fetchAttachment(sessionId, uid, partId) {
|
|
|
644
689
|
contentDisposition: download.meta.disposition ?? 'attachment',
|
|
645
690
|
charset: download.meta.charset,
|
|
646
691
|
};
|
|
692
|
+
};
|
|
693
|
+
try {
|
|
694
|
+
await ensureConnected(s);
|
|
695
|
+
return await doDownload();
|
|
647
696
|
}
|
|
648
|
-
catch {
|
|
649
|
-
|
|
697
|
+
catch (e) {
|
|
698
|
+
// 连接断开等导致失败 → 重连一次再试
|
|
699
|
+
console.log('[fetchAttachment] first attempt failed:', partId, e?.message);
|
|
700
|
+
try {
|
|
701
|
+
await ensureConnected(s);
|
|
702
|
+
return await doDownload();
|
|
703
|
+
}
|
|
704
|
+
catch (e2) {
|
|
705
|
+
console.log('[fetchAttachment] retry failed:', partId, e2?.message);
|
|
706
|
+
return null;
|
|
707
|
+
}
|
|
650
708
|
}
|
|
651
709
|
}
|
|
652
710
|
async function fetchAllAttachments(sessionId, uid) {
|
|
653
711
|
const s = getSession(sessionId);
|
|
654
|
-
//
|
|
712
|
+
// 确保已选中 mailbox(download() 依赖 this.mailbox,未选中会静默返回 {})
|
|
713
|
+
const mailbox = s.currentMailbox ?? 'INBOX';
|
|
714
|
+
if (!s.client.mailbox || s.client.mailbox.path !== mailbox) {
|
|
715
|
+
await s.client.mailboxOpen(mailbox);
|
|
716
|
+
s.currentMailbox = mailbox;
|
|
717
|
+
}
|
|
718
|
+
// 先获取 bodyStructure(只匹配一条 uid,只会 yield 一次)。
|
|
719
|
+
// ⚠️ 不能 break!imapflow 的 fetch 迭代器要等底层 FETCH 命令收到 OK 才会真正结束;
|
|
720
|
+
// 过早 break 会让连接仍处于 busy 状态,随后 download() 会被拒绝 → 返回空数组。
|
|
721
|
+
// 让迭代器自然结束(内部会等待 FETCH 完成)后,连接才真正空闲可用。
|
|
722
|
+
let bodyStructure = null;
|
|
655
723
|
for await (const msg of s.client.fetch({ uid: String(uid) }, { uid: true, bodyStructure: true }, { uid: true })) {
|
|
656
|
-
if (!
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
724
|
+
if (!bodyStructure)
|
|
725
|
+
bodyStructure = msg.bodyStructure;
|
|
726
|
+
}
|
|
727
|
+
if (!bodyStructure)
|
|
728
|
+
return [];
|
|
729
|
+
// 调试:打印真实 bodyStructure,便于定位附件 partId
|
|
730
|
+
console.log('[fetchAllAttachments] bodyStructure:', JSON.stringify(bodyStructure));
|
|
731
|
+
// 遍历 bodyStructure 树找出所有附件叶子节点
|
|
732
|
+
const parts = [];
|
|
733
|
+
function walk(node, prefix) {
|
|
734
|
+
// multipart 容器:递归进子节点(注意 childNodes 可能是空数组)
|
|
735
|
+
if (node.childNodes && node.childNodes.length > 0) {
|
|
736
|
+
node.childNodes.forEach((child, i) => {
|
|
737
|
+
walk(child, prefix ? `${prefix}.${i + 1}` : `${i + 1}`);
|
|
738
|
+
});
|
|
739
|
+
return;
|
|
669
740
|
}
|
|
670
|
-
|
|
671
|
-
//
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
741
|
+
// 叶子:node.type 是完整 MIME 类型(如 'text/plain'),取主类型判断。
|
|
742
|
+
// 只收真附件:有 attachment disposition / 文件名,或非 text(图片、pdf 等)。
|
|
743
|
+
// 纯 text 正文(无 disposition/文件名)跳过。
|
|
744
|
+
const primary = String(node.type || '').split('/')[0];
|
|
745
|
+
const isAttachment = node.disposition === 'attachment' ||
|
|
746
|
+
!!node.dispositionParameters?.filename ||
|
|
747
|
+
!!node.parameters?.name;
|
|
748
|
+
if (isAttachment || primary !== 'text') {
|
|
749
|
+
parts.push(prefix || '1');
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
walk(bodyStructure, '');
|
|
753
|
+
console.log('[fetchAllAttachments] parts:', parts);
|
|
754
|
+
// 下载每个附件
|
|
755
|
+
const results = [];
|
|
756
|
+
for (const partId of parts) {
|
|
757
|
+
try {
|
|
758
|
+
const att = await fetchAttachment(sessionId, uid, partId);
|
|
759
|
+
if (att)
|
|
760
|
+
results.push(att);
|
|
761
|
+
else
|
|
762
|
+
console.log('[fetchAllAttachments] download failed part:', partId);
|
|
763
|
+
}
|
|
764
|
+
catch {
|
|
765
|
+
/* skip */
|
|
682
766
|
}
|
|
683
|
-
return results;
|
|
684
767
|
}
|
|
685
|
-
|
|
768
|
+
console.log('[fetchAllAttachments] downloaded:', results.length, results.map((r) => r.filename));
|
|
769
|
+
return results;
|
|
686
770
|
}
|
|
687
771
|
// ─── IDLE ──────────────────────────────────────────────────
|
|
688
772
|
const idleCallbacks = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imapHandler.js","sourceRoot":"","sources":["../src/imapHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imapHandler.js","sourceRoot":"","sources":["../src/imapHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ interface ImapSession {
|
|
|
12
12
|
client: ImapFlow;
|
|
13
13
|
connected: boolean;
|
|
14
14
|
currentMailbox?: string;
|
|
15
|
+
/** 连接配置(host/port/auth 等),用于断线后重建新实例 */
|
|
16
|
+
config?: any;
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
const sessions = new Map<string, ImapSession>();
|
|
@@ -175,7 +177,7 @@ export async function connect(config: any): Promise<any> {
|
|
|
175
177
|
|
|
176
178
|
try {
|
|
177
179
|
await client.connect();
|
|
178
|
-
sessions.set(sessionId, { client, connected: true });
|
|
180
|
+
sessions.set(sessionId, { client, connected: true, config });
|
|
179
181
|
return {
|
|
180
182
|
success: true,
|
|
181
183
|
sessionId,
|
|
@@ -412,6 +414,7 @@ export async function fetchEmails(
|
|
|
412
414
|
const lock = await s.client.getMailboxLock(mailbox);
|
|
413
415
|
try {
|
|
414
416
|
const mbox = await s.client.mailboxOpen(mailbox);
|
|
417
|
+
s.currentMailbox = mailbox;
|
|
415
418
|
const total = mbox.exists ?? 0;
|
|
416
419
|
|
|
417
420
|
// 构建查询范围
|
|
@@ -697,16 +700,70 @@ export async function expunge(sessionId: string): Promise<void> {
|
|
|
697
700
|
|
|
698
701
|
// ─── 附件 (使用 download API) ─────────────────────────────
|
|
699
702
|
|
|
703
|
+
/** 确保 IMAP 连接存活;连接已关闭则重建新 ImapFlow 实例并重新 SELECT 原邮箱。
|
|
704
|
+
* ⚠️ ImapFlow 实例只能 connect() 一次,断线后不能复用,必须 new 新实例。
|
|
705
|
+
* ⚠️ 不要用 s.client.connected 判断(该属性不存在,永远是 undefined),
|
|
706
|
+
* 要用 isClosed + state。
|
|
707
|
+
*/
|
|
708
|
+
async function ensureConnected(s: any): Promise<void> {
|
|
709
|
+
const client = s.client;
|
|
710
|
+
const alive = !client.isClosed && client.state !== client.states.LOGOUT;
|
|
711
|
+
if (alive) return;
|
|
712
|
+
|
|
713
|
+
// 连接已关闭 → 重建新实例
|
|
714
|
+
if (!s.config) {
|
|
715
|
+
throw new Error('IMAP connection lost, but no config to reconnect');
|
|
716
|
+
}
|
|
717
|
+
const cfg = s.config;
|
|
718
|
+
console.log('[ensureConnected] reconnecting...');
|
|
719
|
+
const newClient = new ImapFlow({
|
|
720
|
+
host: cfg.host,
|
|
721
|
+
port: cfg.port ?? 993,
|
|
722
|
+
secure: cfg.tls ?? true,
|
|
723
|
+
auth: {
|
|
724
|
+
user: cfg.username,
|
|
725
|
+
pass: cfg.password,
|
|
726
|
+
accessToken: cfg.accessToken,
|
|
727
|
+
},
|
|
728
|
+
connectionTimeout: cfg.timeout ?? 30000,
|
|
729
|
+
greetingTimeout: 16000,
|
|
730
|
+
tls: { rejectUnauthorized: cfg.checkCertificate ?? true },
|
|
731
|
+
logger: false,
|
|
732
|
+
});
|
|
733
|
+
await newClient.connect();
|
|
734
|
+
s.client = newClient;
|
|
735
|
+
s.connected = true;
|
|
736
|
+
// 重建后需重新选中原邮箱(download/fetch 依赖当前 mailbox)
|
|
737
|
+
if (s.currentMailbox) {
|
|
738
|
+
await newClient.mailboxOpen(s.currentMailbox);
|
|
739
|
+
}
|
|
740
|
+
console.log('[ensureConnected] reconnected, mailbox:', s.currentMailbox);
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
/** 给 Promise 加超时,避免死连接上无限挂起 */
|
|
744
|
+
function withTimeout<T>(p: Promise<T>, ms: number, label: string): Promise<T> {
|
|
745
|
+
return new Promise<T>((resolve, reject) => {
|
|
746
|
+
const timer = setTimeout(() => reject(new Error(`${label} timeout`)), ms);
|
|
747
|
+
p.then(
|
|
748
|
+
(v) => { clearTimeout(timer); resolve(v); },
|
|
749
|
+
(e) => { clearTimeout(timer); reject(e); },
|
|
750
|
+
);
|
|
751
|
+
});
|
|
752
|
+
}
|
|
753
|
+
|
|
700
754
|
export async function fetchAttachment(
|
|
701
755
|
sessionId: string,
|
|
702
756
|
uid: number,
|
|
703
757
|
partId: string
|
|
704
758
|
): Promise<any | null> {
|
|
705
759
|
const s = getSession(sessionId);
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
760
|
+
|
|
761
|
+
const doDownload = async () => {
|
|
762
|
+
const download = await withTimeout(
|
|
763
|
+
s.client.download(String(uid), partId, { uid: true }),
|
|
764
|
+
20000,
|
|
765
|
+
`download ${partId}`,
|
|
766
|
+
);
|
|
710
767
|
const chunks: Buffer[] = [];
|
|
711
768
|
for await (const chunk of download.content) {
|
|
712
769
|
chunks.push(chunk);
|
|
@@ -722,8 +779,21 @@ export async function fetchAttachment(
|
|
|
722
779
|
contentDisposition: download.meta.disposition ?? 'attachment',
|
|
723
780
|
charset: download.meta.charset,
|
|
724
781
|
};
|
|
725
|
-
}
|
|
726
|
-
|
|
782
|
+
};
|
|
783
|
+
|
|
784
|
+
try {
|
|
785
|
+
await ensureConnected(s);
|
|
786
|
+
return await doDownload();
|
|
787
|
+
} catch (e: any) {
|
|
788
|
+
// 连接断开等导致失败 → 重连一次再试
|
|
789
|
+
console.log('[fetchAttachment] first attempt failed:', partId, e?.message);
|
|
790
|
+
try {
|
|
791
|
+
await ensureConnected(s);
|
|
792
|
+
return await doDownload();
|
|
793
|
+
} catch (e2: any) {
|
|
794
|
+
console.log('[fetchAttachment] retry failed:', partId, e2?.message);
|
|
795
|
+
return null;
|
|
796
|
+
}
|
|
727
797
|
}
|
|
728
798
|
}
|
|
729
799
|
|
|
@@ -733,40 +803,75 @@ export async function fetchAllAttachments(
|
|
|
733
803
|
): Promise<any[]> {
|
|
734
804
|
const s = getSession(sessionId);
|
|
735
805
|
|
|
736
|
-
//
|
|
806
|
+
// 确保已选中 mailbox(download() 依赖 this.mailbox,未选中会静默返回 {})
|
|
807
|
+
const mailbox = s.currentMailbox ?? 'INBOX';
|
|
808
|
+
if (!s.client.mailbox || s.client.mailbox.path !== mailbox) {
|
|
809
|
+
await s.client.mailboxOpen(mailbox);
|
|
810
|
+
s.currentMailbox = mailbox;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
// 先获取 bodyStructure(只匹配一条 uid,只会 yield 一次)。
|
|
814
|
+
// ⚠️ 不能 break!imapflow 的 fetch 迭代器要等底层 FETCH 命令收到 OK 才会真正结束;
|
|
815
|
+
// 过早 break 会让连接仍处于 busy 状态,随后 download() 会被拒绝 → 返回空数组。
|
|
816
|
+
// 让迭代器自然结束(内部会等待 FETCH 完成)后,连接才真正空闲可用。
|
|
817
|
+
let bodyStructure: any = null;
|
|
737
818
|
for await (const msg of s.client.fetch(
|
|
738
819
|
{ uid: String(uid) },
|
|
739
820
|
{ uid: true, bodyStructure: true },
|
|
740
821
|
{ uid: true }
|
|
741
822
|
)) {
|
|
742
|
-
if (!
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
823
|
+
if (!bodyStructure) bodyStructure = msg.bodyStructure;
|
|
824
|
+
}
|
|
825
|
+
if (!bodyStructure) return [];
|
|
826
|
+
|
|
827
|
+
// 调试:打印真实 bodyStructure,便于定位附件 partId
|
|
828
|
+
console.log(
|
|
829
|
+
'[fetchAllAttachments] bodyStructure:',
|
|
830
|
+
JSON.stringify(bodyStructure),
|
|
831
|
+
);
|
|
832
|
+
|
|
833
|
+
// 遍历 bodyStructure 树找出所有附件叶子节点
|
|
834
|
+
const parts: string[] = [];
|
|
835
|
+
function walk(node: any, prefix: string) {
|
|
836
|
+
// multipart 容器:递归进子节点(注意 childNodes 可能是空数组)
|
|
837
|
+
if (node.childNodes && node.childNodes.length > 0) {
|
|
838
|
+
node.childNodes.forEach((child: any, i: number) => {
|
|
839
|
+
walk(child, prefix ? `${prefix}.${i + 1}` : `${i + 1}`);
|
|
840
|
+
});
|
|
841
|
+
return;
|
|
754
842
|
}
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
//
|
|
758
|
-
const
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
843
|
+
// 叶子:node.type 是完整 MIME 类型(如 'text/plain'),取主类型判断。
|
|
844
|
+
// 只收真附件:有 attachment disposition / 文件名,或非 text(图片、pdf 等)。
|
|
845
|
+
// 纯 text 正文(无 disposition/文件名)跳过。
|
|
846
|
+
const primary = String(node.type || '').split('/')[0];
|
|
847
|
+
const isAttachment =
|
|
848
|
+
node.disposition === 'attachment' ||
|
|
849
|
+
!!node.dispositionParameters?.filename ||
|
|
850
|
+
!!node.parameters?.name;
|
|
851
|
+
if (isAttachment || primary !== 'text') {
|
|
852
|
+
parts.push(prefix || '1');
|
|
853
|
+
}
|
|
854
|
+
}
|
|
855
|
+
walk(bodyStructure, '');
|
|
856
|
+
console.log('[fetchAllAttachments] parts:', parts);
|
|
857
|
+
|
|
858
|
+
// 下载每个附件
|
|
859
|
+
const results: any[] = [];
|
|
860
|
+
for (const partId of parts) {
|
|
861
|
+
try {
|
|
862
|
+
const att = await fetchAttachment(sessionId, uid, partId);
|
|
863
|
+
if (att) results.push(att);
|
|
864
|
+
else console.log('[fetchAllAttachments] download failed part:', partId);
|
|
865
|
+
} catch {
|
|
866
|
+
/* skip */
|
|
766
867
|
}
|
|
767
|
-
return results;
|
|
768
868
|
}
|
|
769
|
-
|
|
869
|
+
console.log(
|
|
870
|
+
'[fetchAllAttachments] downloaded:',
|
|
871
|
+
results.length,
|
|
872
|
+
results.map((r) => r.filename),
|
|
873
|
+
);
|
|
874
|
+
return results;
|
|
770
875
|
}
|
|
771
876
|
|
|
772
877
|
// ─── IDLE ──────────────────────────────────────────────────
|
package/src/web.ts
CHANGED
|
@@ -38,7 +38,8 @@ import type {
|
|
|
38
38
|
// ─── 代理服务器配置 ─────────────────────────────────────────
|
|
39
39
|
|
|
40
40
|
const DEFAULT_PROXY_URL = 'http://localhost:3987';
|
|
41
|
-
|
|
41
|
+
// 60s:附件下载可能较慢/含多个 part,15s 容易误超时
|
|
42
|
+
const API_TIMEOUT = 60000;
|
|
42
43
|
|
|
43
44
|
let PROXY_URL = DEFAULT_PROXY_URL;
|
|
44
45
|
let _ws: WebSocket | null = null;
|