Pub/Sub Java gRPC-kanali seadistamine HTTP CONNECTi jaoks
Paigaldage ProxyDetector GAX-kanali pakkuja kaudu, säilitades Pub/Subi sihtadressi ja TLS-identiteedi.
Kasutage loodud kliendi kanalipakkujat, kui Pub/Sub Java gRPC-ühendus vajab HTTP CONNECT-puhverserverit. Tavaline URLConnectioni säte seda kanaliseadistust ei loo.
topic-admin kliendi jaoks:
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 ja TopicAdminSettings on Pub/Sub v1 klassid; HttpConnectProxiedSocketAddress pärineb io.grpc-st ja InetSocketAddress java.net-st. Näide eeldab selle kanali tavalist internetiaadressi sihti.
Detektor tagastab puhverserveri ühenduse aadressi koos algse sihiga. gRPC-ehitaja nõuab, et puhverserveri aadress oleks lahendatud. Jätke teenuse lõpp-punkt Pub/Subiks: selle asendamine puhverserveri hostinimega kaotaks teenuse sihi ja kavandatud TLS-identiteedi.
Eemaldage autentimata puhverserveri kasutajanime/parooli kutsed; avalikud HTTP-kandidaadid on HTTP-puhverserverite loendist. Need kutsed on HTTP CONNECTi mandaadi liides, mitte SOCKS ega üldine NTLM-teostus.
Kui tõrge tekib enne gRPC-toimingut, samal ajal kui iseseisvalt loodud mandaat saab loa, uurige selle mandaadi HTTP-marsruuti. See jääb siin näidatud kanalipakkujast väljapoole.