Pub/Sub Java gRPC арнасын HTTP CONNECT үшін конфигурациялау
GAX арна провайдері арқылы ProxyDetector орнатып, Pub/Sub мақсатты мекенжайы мен TLS сәйкестігін сақтаңыз.
Pub/Sub Java gRPC қосылымына HTTP CONNECT проксиі қажет болғанда, жасалған клиенттің арна провайдерін пайдаланыңыз. Кәдімгі URLConnection параметрі бұл арна конфигурациясын орнатпайды.
topic-admin клиенті үшін:
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 мен TopicAdminSettings — Pub/Sub v1 кластары; HttpConnectProxiedSocketAddress io.grpc-тен, ал InetSocketAddress java.net-нан келеді. Мысал осы арна пайдаланатын кәдімгі интернет-мекенжай мақсатын болжайды.
Детектор бастапқы мақсатпен қатар прокси қосылысының мекенжайын қайтарады. gRPC құрастырушысы прокси мекенжайының шешілуін талап етеді. Қызметтің соңғы нүктесін Pub/Sub күйінде қалдырыңыз: оны прокси хост атымен алмастыру қызмет мақсаты мен көзделген TLS сәйкестігін жоғалтады.
Аутентификацияланбаған прокси үшін пайдаланушы аты/құпия сөз шақыруларын жойыңыз; ашық HTTP үміткерлері HTTP прокси тізімінде бар. Бұл шақырулар — HTTP CONNECT тіркелгі деректерінің интерфейсі, SOCKS немесе жалпы NTLM іске асырылуы емес.
Егер қате gRPC операциясына дейін пайда болса және дербес жасалған тіркелгі деректері токен алса, сол тіркелгі деректерінің HTTP бағытын тексеріңіз. Ол осында көрсетілген арна провайдерінің тыс жерінде.