Google Cloud Storage Java: configura el transport HTTP mitjançant proxy
Seleccioneu StorageOptions.http i passeu la fàbrica de transport tant a les opcions del servei HTTP com a 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();La configuració habitual d'Application Default Credentials de l'aplicació es manté. On es permet un proxy públic per als punts finals de Storage i dels testimonis, la llista de proxys HTTP ofereix candidats per a l'amfitrió i el port d'InetSocketAddress. Proporcioneu la fàbrica mentre carregueu aquestes credencials, abans que les seves sol·licituds de testimoni HTTP la necessitin.
Dues entrades utilitzen la fàbrica: getApplicationDefault(factory) cobreix la feina HTTP de la implementació de credencials; HttpTransportOptions cobreix el servei HTTP de Storage. Cap de les dues assignacions no configura l'altra automàticament.
StorageOptions.http està disponible des de Java Storage 2.14.0. Mantingueu clars els tipus de les biblioteques: HttpTransportOptions pertany a Google Cloud Core i NetHttpTransport a la biblioteca client HTTP de Google.
Un client de Storage específic de gRPC té un altre transport. Trieu el constructor HTTP per a aquesta personalització de la fàbrica en lloc d'adjuntar opcions només HTTP a un canal gRPC.