Afegiu proxy al costat de la configuració del bústia quan ImapFlow ha d'arribar a un servidor IMAP a través d'un proxy HTTP CONNECT:

import { ImapFlow } from 'imapflow';

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

mailboxCredentials conté el compte IMAP de l'aplicació. Utilitzeu aquest client per a la seqüència existent de connexió, treball amb el bústia i tancament de sessió o neteja després d'un error. Per a un servei de correu accessible públicament on es permet un intermediari públic, la llista de proxys HTTP ofereix candidats per a l'URL del proxy sense credencials de proxy; comproveu l'accés a l'amfitrió i al port IMAP reals.

Dos detalls que val la pena comprovar

  • El port del túnel és 993. El proxy ha de permetre CONNECT cap a imap.example:993. Un intermediari que només permet túnels de llocs web al 443 pot rebutjar aquesta petició fins i tot amb credencials de proxy vàlides.
  • El bústia continua protegida amb TLS. secure: true s'aplica a la connexió del bústia. L'esquema http de l'URL del proxy identifica l'escoltador de l'intermediari, no un substitut del nom d'amfitrió IMAP.

Si l'intermediari necessita un inici de sessió, proporcioneu-ne el compte mitjançant el format d'URL de proxy admès per ImapFlow. Manteniu el compte del bústia a auth. Aquest exemple utilitza el camí de proxy estàndard de Node; el transport personalitzat de runtime d'ImapFlow no es pot combinar amb proxy.

Articles relacionats