En HTTP-proxy i en ImapFlow-anslutning
Lägg till ImapFlows proxyalternativ i en befintlig IMAP-anslutning och kontrollera om mellanledet tillåter postlådeporten.
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.