Skip to content

Bun 에서 fetch 는 HTTP 또는 HTTPS 프록시를 통해 요청을 보내는 것을 지원합니다. 이는 기업 네트워크에서 또는 특정 IP 주소를 통해 요청이 전송되도록 해야 할 때 유용합니다.

ts
await fetch("https://example.com", {
  // 프록시 서버 URL
  proxy: "https://username:password@proxy.example.com:8080",
});

proxy 옵션은 URL 문자열이거나 url 과 선택적 headers 가 있는 객체일 수 있습니다. 프록시가 인증이 필요한 경우 URL 에 사용자 이름과 비밀번호를 포함할 수 있습니다. http:// 또는 https:// 일 수 있습니다.


사용자 지정 프록시 헤더

프록시 서버에 사용자 지정 헤더를 보내려면 (프록시 인증 토큰 사용자 지정 라우팅 등에 유용) 객체 형식을 사용합니다.

ts
await fetch("https://example.com", {
  proxy: {
    url: "https://proxy.example.com:8080",
    headers: {
      "Proxy-Authorization": "Bearer my-token",
      "X-Proxy-Region": "us-east-1",
    },
  },
});

headers 속성은 일반 객체 또는 Headers 인스턴스를 허용합니다. 이 헤더는 프록시 서버로 직접 전송됩니다 (CONNECT 요청 (HTTPS 대상의 경우) 또는 프록시 요청 (HTTP 대상의 경우)).

Proxy-Authorization 헤더를 제공하면 프록시 URL 에 지정된 자격 증명을 재정의합니다.


환경 변수

프록시 URL 을 $HTTP_PROXY 또는 $HTTPS_PROXY 환경 변수로 설정할 수도 있습니다. 이는 모든 요청에 동일한 프록시를 사용하려는 경우 유용합니다.

sh
HTTPS_PROXY=https://username:password@proxy.example.com:8080 bun run index.ts

Bun by www.bunjs.com.cn 편집