Pripojte továreň proxy transportu ku klientovi REST BigQuery Java
Použite HttpTransportOptions na existujúcej konfigurácii projektu a prihlasovacích údajov; ak prihlasovacie údaje samy vykonávajú tokenové požiadavky, nastavte transport osobitne.
import java.net.InetSocketAddress;
import java.net.Proxy;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.cloud.http.HttpTransportOptions;
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
var proxy = new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("proxy.example", 8080));
var httpOptions = HttpTransportOptions.newBuilder()
.setHttpTransportFactory(() ->
new NetHttpTransport.Builder().setProxy(proxy).build())
.build();
BigQuery bigQuery = BigQueryOptions.newBuilder()
.setProjectId(projectId)
.setCredentials(credentials)
.setTransportOptions(httpOptions)
.build()
.getService();Pre operácie REST použite túto inštanciu bigQuery. projectId a credentials pochádzajú z existujúcej konfigurácie aplikácie.
Továreň vytvára HTTP transport, ktorý sa cez sprostredkovateľa dostane k API BigQuery. Koncový bod API zostáva cieľom; jeho nahradenie adresou proxy žiada inú službu. Pre povolenú trasu cez verejnú proxy k BigQuery dodáva zoznam HTTP proxy kandidátov pre polia InetSocketAddress.
Získanie alebo obnovenie prihlasovacích údajov môže mať vlastný HTTP transport, preto tento podporovaný vstup nastavte, keď jeho požiadavky potrebujú proxy. Tieto možnosti REST tiež nenastavujú nezávislý kanál gRPC.
Pre zisťovanie systému má java.net.useSystemProxies správanie špecifické pre platformu a nezaručuje, že sa hodnota Docker HTTP_PROXY stane trasou tohto klienta. Explicitná továreň vyššie robí zvolený transport REST viditeľným už pri vytváraní.