지원되는 HTTP 또는 HTTPS URL 연결의 경우 Proxy.NO_PROXY를 전달하면 직접 연결이라는 선택이 명시됩니다:

URLConnection connection = URI.create("https://example.com/")
    .toURL().openConnection(Proxy.NO_PROXY);
connection.setConnectTimeout(5000);
connection.setReadTimeout(10000);

이렇게 하면 한 작업을 둘러싼 전역 설정 및 복원 절차를 피할 수 있습니다. 다른 스레드는 애플리케이션의 기존 프록시 정책을 계속 사용할 수 있습니다.

이 인수는 이 URLConnection 경로에만 적용됩니다. 별도의 HTTP 클라이언트 빌더, 다른 라이브러리의 소켓 또는 운영 체제의 네트워크 구성을 변경하지 않습니다.

네트워크가 외부 액세스에 프록시를 요구하면 직접 연결이 여전히 실패할 수 있습니다. 그 실패를 프록시 인증 오류와 구분하십시오. 이 작업은 의도적으로 프록시를 건너뛰었습니다.

또한 HTTPS 대상에 대한 일반 TLS 검증을 유지하십시오. 직접 경로를 선택하면 중간 경로가 바뀌지만 대상 인증서가 증명해야 하는 신원은 바뀌지 않습니다.

관련 글