Isang HTTP proxy sa isang koneksyon ng ImapFlow
Idagdag ang opsyon na proxy ng ImapFlow sa umiiral na koneksyon ng IMAP at tingnan kung pinapayagan ng tagapamagitan ang port ng mailbox.
Magdagdag ng proxy sa tabi ng mga setting ng mailbox kapag kailangang maabot ng ImapFlow ang isang IMAP server sa pamamagitan ng proxy na HTTP CONNECT:
import { ImapFlow } from 'imapflow';
const client = new ImapFlow({
host: 'imap.example',
port: 993,
secure: true,
auth: mailboxCredentials,
proxy: 'http://proxy.example:8080',
});
Ang mailboxCredentials ang may hawak ng IMAP account ng aplikasyon. Gamitin ang client na ito para sa umiiral na pagkakasunod-sunod ng koneksyon, gawain sa mailbox at pag-logout o paglilinis pagkatapos ng pagkabigo. Para sa serbisyo ng mail na maaaring maabot ng publiko kung saan pinapayagan ang pampublikong tagapamagitan, listahan ng HTTP proxy ang nagbibigay ng mga kandidato para sa proxy URL na walang kredensyal ng proxy; tingnan ang pag-access sa aktwal na host at port ng IMAP.
Dalawang detalye na dapat tingnan
- Ang port ng tunnel ay 993. Dapat payagan ng proxy ang CONNECT papunta sa imap.example:993. Maaaring tanggihan ng tagapamagitang nagpapahintulot lamang ng tunnel ng website sa 443 ang kahilingang ito kahit may wastong kredensyal ng proxy.
- Nananatiling protektado ng TLS ang mailbox. Naaangkop ang secure: true sa koneksyon ng mailbox. Ipinapakita ng http scheme ng proxy URL ang tagapakinig ng tagapamagitan, hindi kapalit ng hostname ng IMAP.
Kung kailangan ng login ng tagapamagitan, ibigay ang account nito sa pamamagitan ng format ng proxy URL na sinusuportahan ng ImapFlow. Panatilihin ang account ng mailbox sa auth. Ginagamit ng halimbawang ito ang karaniwang landas ng proxy ng Node; hindi maisasama ang custom na runtime transport ng ImapFlow sa proxy.