Додайте 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.

Схожі статті