diff --git a/app/api/mail/route.ts b/app/api/mail/route.ts index 85ded85..7b909e1 100644 --- a/app/api/mail/route.ts +++ b/app/api/mail/route.ts @@ -285,7 +285,7 @@ export async function GET() { } const fetch = imap.seq.fetch('1:10', { - bodies: ['HEADER', 'TEXT'], + bodies: ['HEADER.FIELDS (FROM SUBJECT DATE)', 'TEXT'], struct: true }); @@ -302,16 +302,20 @@ export async function GET() { starred: false }; - msg.on('body', (stream) => { + msg.on('body', (stream, info) => { let buffer = ''; stream.on('data', (chunk) => { buffer += chunk.toString('utf8'); }); stream.on('end', () => { - const headers = parseEmailHeaders(buffer); - email.from = headers.from; - email.subject = headers.subject; - email.date = headers.date; + if (info.which === 'HEADER.FIELDS (FROM SUBJECT DATE)') { + const headers = parseEmailHeaders(buffer); + email.from = headers.from; + email.subject = headers.subject; + email.date = headers.date; + } else if (info.which === 'TEXT') { + email.body = buffer; + } }); });