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();

Běžné nastavení Application Default Credentials aplikace zůstává beze změny. Tam, kde je pro koncové body Storage a tokenů povolen veřejný proxy, nabízí seznam HTTP proxy kandidáty pro hostitele a port InetSocketAddress. Továrnu dodávejte při načítání těchto přihlašovacích údajů, dříve než ji jejich HTTP tokenové požadavky potřebují.

Továrnu používají dva vstupy: getApplicationDefault(factory) pokrývá HTTP práci implementace přihlašovacích údajů; HttpTransportOptions pokrývá službu Storage HTTP. Ani jedno přiřazení automaticky nenastaví druhé.

StorageOptions.http je k dispozici od Java Storage 2.14.0. Udržujte typy knihoven v pořádku: HttpTransportOptions patří do Google Cloud Core a NetHttpTransport do HTTP klientské knihovny Google.

Klient Storage specifický pro gRPC má jiný transport. Pro toto přizpůsobení továrny zvolte HTTP builder, místo abyste k gRPC kanálu připojovali možnosti pouze pro HTTP.

Související články