인증을 통해 http 프록시로 이동
인증을 통해 프록시가 필요한 시나리오의 경우 PostForm 방법을 사용하는 것이 어려울 수 있습니다. 이 문서에서는 이 문제에 대한 해결 방법을 살펴봅니다.
초기 접근 방식 및 제한 사항
일반적으로 요청에 Proxy-Authorization 헤더를 설정하면 인증에 충분할 수 있습니다. 그러나 타사 패키지를 수정하고 프록시 지원을 추가하려고 하면 클라이언트 생성 후 Proxy-Authorization 헤더를 추가하는 것만으로는 충분하지 않을 수 있습니다.
대체 솔루션
다른 접근 방식은 원하는 프록시 구성으로 사용자 정의된 HTTP 클라이언트를 만드는 것입니다. 그런 다음 이 클라이언트를 타사 패키지로 대체할 수 있습니다.
코드 조각:
client := &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyURL(&url.URL{ Scheme: "http", User: url.UserPassword("username", "password"), Host: "146.137.9.45:65233", }), }, }
이 클라이언트는 타사 패키지 대신 타사 패키지에서 활용할 수 있습니다. 매번 새로운 클라이언트를 생성합니다.
또는 프록시 URL을 구문 분석할 수 있습니다. 직접:
url, _ := url.Parse("http://username:[email protected]:65233") client := &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyURL(url), }, }
이 맞춤형 클라이언트를 사용하면 인증이 포함된 프록시를 타사 패키지에 원활하게 통합하여 PostForm 메서드를 통해 인증된 프록시 요청을 활성화할 수 있습니다.
위 내용은 PostForm을 사용하여 Go HTTP 프록시 요청을 인증하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!