Un proxy HTTP en una connexió ImapFlow
Afegiu l'opció proxy d'ImapFlow a una connexió IMAP existent i comproveu si l'intermediari permet el port del bústia.
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.