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();
}

독립형 APIRequestContext를 만들 때 proxy를 전달하세요. 공용 프록시로 실행하려면 HTTP 프록시 목록에서 HTTP 엔드포인트를 골라 예제 프록시 주소를 바꾸세요. 의도한 API URL은 대상으로 그대로 두세요. 이 컨텍스트는 자체 연결 구성을 소유하며 사용 후 폐기해야 합니다.

브라우저 실행 설정은 독립적으로 생성된 API 컨텍스트를 구성하지 않습니다. Playwright Test의 내장 request fixture는 관련 테스트 구성을 읽지만, newContext()를 호출하는 헬퍼는 또 다른 구성 경계를 만듭니다. 브라우저 탐색은 되는데 헬퍼가 시간 초과된다면 그 호출 지점을 찾아 헬퍼가 받는 옵션을 확인하세요.

라우팅도 대상 로그인과 별개입니다. 프록시 자격 증명은 중개자에게 권한을 부여합니다. 웹사이트 자격 증명과 쿠키는 대상에게 권한을 부여합니다. 독립형 컨텍스트는 호스트 이름이 일치한다는 이유만으로 브라우저 쿠키를 상속하지 않습니다. 브라우저와 연결된 요청 컨텍스트에는 문서화된 자체 쿠키 공유 동작이 있습니다.

경로를 선택할 때 인증서 검증은 켜 두세요. ignoreHTTPSErrors는 검증을 바꿀 뿐, 이 컨텍스트가 어떤 프록시를 쓰는지는 바꾸지 않습니다.

관련 글