import { request as apiRequests } from '@playwright/test';

const api = await apiRequests.newContext({
  proxy: { server: 'http://proxy.example:8080' }
});

try {
  const response = await api.get('https://example.com/');
} finally {
  await api.dispose();
}

Передайте proxy при создании автономного APIRequestContext. Для запуска через публичный прокси выберите HTTP-эндпоинт из списка HTTP-прокси и замените пример адреса прокси; оставьте нужный URL API в качестве назначения. Этот контекст владеет собственной конфигурацией подключения и требует освобождения после использования.

Настройка запуска браузера не настраивает независимо созданные контексты API. Встроенный request fixture в Playwright Test читает соответствующую конфигурацию теста, но помощник, вызывающий newContext(), создаёт ещё одну границу конфигурации. Если навигация в браузере работает, а помощник завершается по тайм-ауту, найдите это место вызова и проверьте передаваемые ему параметры.

Маршрутизация также отделена от входа на целевой сайт. Учётные данные прокси авторизуют посредника. Учётные данные и cookie сайта авторизуют цель; автономный контекст не наследует cookie браузера только потому, что имя хоста совпадает. Контексты запросов, связанные с браузером, имеют собственное документированное поведение совместного использования cookie.

Оставляйте проверку сертификатов включённой при выборе маршрута. ignoreHTTPSErrors меняет проверку, а не то, какой прокси использует этот контекст.

Похожие статьи