Google Cloud Storage Java: HTTP 프록시 전송 구성
StorageOptions.http를 선택하고 전송 팩터리를 HTTP 서비스 옵션과 Application Default Credentials 모두에 전달합니다.
var proxy = new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example.net", 8080));
com.google.auth.http.HttpTransportFactory factory = () ->
new com.google.api.client.http.javanet.NetHttpTransport.Builder()
.setProxy(proxy)
.build();
var credentials =
com.google.auth.oauth2.GoogleCredentials.getApplicationDefault(factory);
var transportOptions =
com.google.cloud.http.HttpTransportOptions.newBuilder()
.setHttpTransportFactory(factory)
.build();
var storage = com.google.cloud.storage.StorageOptions.http()
.setCredentials(credentials)
.setTransportOptions(transportOptions)
.build()
.getService();애플리케이션의 일반적인 Application Default Credentials 설정은 그대로 유지됩니다. Storage와 토큰 엔드포인트에 공용 프록시가 허용되는 경우 HTTP 프록시 목록이 InetSocketAddress의 호스트와 포트 후보를 제공합니다. 해당 자격 증명을 로드할 때 팩터리를 제공하세요. HTTP 토큰 요청이 그것을 필요로 하기 전입니다.
팩터리를 사용하는 입력은 두 가지입니다. getApplicationDefault(factory)은 자격 증명 구현의 HTTP 작업을, HttpTransportOptions는 Storage의 HTTP 서비스를 담당합니다. 어느 할당도 다른 쪽을 자동으로 구성하지 않습니다.
StorageOptions.http은 Java Storage 2.14.0부터 사용할 수 있습니다. 라이브러리 유형을 정확히 구분하세요. HttpTransportOptions은 Google Cloud Core에, NetHttpTransport은 Google의 HTTP 클라이언트 라이브러리에 속합니다.
gRPC 전용 Storage 클라이언트에는 다른 전송이 있습니다. 이 팩터리 사용자 지정에는 HTTP 빌더를 선택하고, HTTP 전용 옵션을 gRPC 채널에 붙이지 마세요.