Lägg till proxy vid sidan av postlådeinställningarna när ImapFlow ska nå en IMAP-server via en HTTP CONNECT-proxy:

import { ImapFlow } from 'imapflow';

const client = new ImapFlow({
  host: 'imap.example',
  port: 993,
  secure: true,
  auth: mailboxCredentials,
  proxy: 'http://proxy.example:8080',
});

mailboxCredentials innehåller programmets IMAP-konto. Använd den här klienten för det befintliga flödet med anslutning, postlådearbete och utloggning eller städning efter fel. För en offentligt nåbar e-posttjänst där ett offentligt mellanled är tillåtet levererar HTTP-proxylistan kandidater för proxy-URL:en utan proxyuppgifter; kontrollera åtkomsten till den faktiska IMAP-värden och -porten.

Två detaljer värda att kontrollera

  • Tunnelporten är 993. Proxyn måste tillåta CONNECT till imap.example:993. Ett mellanled som bara tillåter webbplatstunnlar på 443 kan avvisa den här begäran även med giltiga proxyuppgifter.
  • Postlådan förblir TLS-skyddad. secure: true gäller för postlådeanslutningen. http-schemat i proxy-URL:en anger mellanledets lyssnare, inte en ersättning för IMAP-värdnamnet.

Om mellanledet kräver inloggning anger du dess konto via ImapFlows stödda proxy-URL-format. Behåll postlådekontot i auth. Det här exemplet använder den vanliga Node-proxyvägen; ImapFlows anpassade runtime-transport kan inte kombineras med proxy.

Relaterade artiklar