HTTP CONNECT-നായി Pub/Sub Java-യുടെ gRPC ചാനൽ കോൺഫിഗർ ചെയ്യുക
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 പാത പരിശോധിക്കുക. അത് ഇവിടെ കാണിച്ചിരിക്കുന്ന ചാനൽ ദാതാവിന് പുറത്താണ്.