Benotzt den Kanalanbieter vum generéierte Client, wann eng Pub/Sub Java gRPC-Verbindung e HTTP CONNECT-Proxy brauch. Eng gewéinlech URLConnection-Astellung baut dës Kanalkonfiguratioun net op.

Fir den topic-admin-Client:

var channelProvider = TopicAdminSettings
    .defaultGrpcTransportProviderBuilder()
    .setChannelConfigurator(channel -> channel.proxyDetector(target ->
        HttpConnectProxiedSocketAddress.newBuilder()
            .setProxyAddress(new InetSocketAddress("proxy.example", 8080))
            .setTargetAddress((InetSocketAddress) target)
            .setUsername(proxyUser)
            .setPassword(proxyPassword)
            .build()))
    .build();

var settings = TopicAdminSettings.newBuilder()
    .setTransportChannelProvider(channelProvider)
    .build();
try (TopicAdminClient client = TopicAdminClient.create(settings)) {
    // Perform the application's intended topic-admin operation here.
}

TopicAdminClient an TopicAdminSettings si Pub/Sub v1-Klassen; HttpConnectProxiedSocketAddress kënnt vun io.grpc an InetSocketAddress vun java.net. D'Beispill geet vum gewéinlechen Internetadress-Zil aus, dat dëse Kanal benotzt.

Den Detektor gëtt eng Proxyverbindungsadress niewent dem ursprénglechen Zil zréck. Den gRPC-Builder verlaangt, datt d'Proxyadress opgeléist gëtt. Loosst den Endpunkt vum Service als Pub/Sub: en duerch den Hostnumm vum Proxy ersetzen géif d'Serviczil an déi virgesinn TLS-Identitéit verléieren.

Entfernt d'Benotzernumm/Passwuert-Aufruffer fir en net authentifizéierte Proxy; ëffentlech HTTP-Kandidaten fannt Dir an der Lëscht vun HTTP-Proxye. Dës Aufruffer sinn d'HTTP CONNECT-Identitéitsofferfläche, net SOCKS oder eng allgemeng NTLM-Implementatioun.

Wann de Feeler virun der gRPC-Operatioun optrëtt, wärend eng onofhängeg erstallte Identitéit en Token kritt, kontrolléiert den HTTP-Wee vun dëser Identitéit. E läit baussent dem Kanalanbieter, deen hei gewise gëtt.

Ähnlech Artikelen