HTTP-проксі у з'єднанні ImapFlow
Додайте параметр проксі ImapFlow до наявного з'єднання IMAP і перевірте, чи посередник дозволяє порт поштової скриньки.
Додайте proxy поряд із налаштуваннями поштової скриньки, коли ImapFlow має досягти сервера IMAP через проксі 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 зберігає обліковий запис IMAP застосунку. Використовуйте цей клієнт для наявної послідовності підключення, роботи з поштовою скринькою та виходу або очищення після збою. Для загальнодоступної поштової служби, де дозволено публічний посередник, список HTTP-проксі пропонує кандидатів для URL проксі без облікових даних проксі; перевірте доступ до фактичного хоста й порту IMAP.
Дві деталі, які варто перевірити
- Порт тунелю — 993. Проксі має дозволяти CONNECT до imap.example:993. Посередник, який дозволяє тунелі сайтів лише на 443, може відхилити цей запит навіть із чинними обліковими даними проксі.
- Поштова скринька залишається захищеною TLS. secure: true стосується з'єднання поштової скриньки. Схема http в URL проксі позначає слухач посередника, а не заміну імені хоста IMAP.
Якщо посереднику потрібен вхід, надайте його обліковий запис у підтримуваному ImapFlow форматі URL проксі. Тримайте обліковий запис поштової скриньки в auth. Цей приклад використовує стандартний шлях проксі Node; власний runtime-транспорт ImapFlow не можна поєднувати з proxy.