Google Cloud Storage Java: HTTP ప్రాక్సీ రవాణాను కాన్ఫిగర్ చేయండి
StorageOptions.http ఎంచుకోండి మరియు రవాణా ఫ్యాక్టరీని HTTP సేవా ఎంపికలకు మరియు Application Default Credentials రెండింటికీ ఇవ్వండి.
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();అప్లికేషన్ యొక్క సాధారణ Application Default Credentials సెటప్ అలాగే ఉంటుంది. Storage మరియు టోకెన్ ఎండ్పాయింట్లకు పబ్లిక్ ప్రాక్సీ అనుమతించబడిన చోట, HTTP ప్రాక్సీ జాబితా InetSocketAddress హోస్ట్ మరియు పోర్ట్కు అభ్యర్థులను అందిస్తుంది. ఆ ఆధారాలను లోడ్ చేస్తున్నప్పుడే ఫ్యాక్టరీని అందించండి, వాటి HTTP టోకెన్ అభ్యర్థనలకు అది అవసరమయ్యే ముందు.
రెండు ఇన్పుట్లు ఫ్యాక్టరీని ఉపయోగిస్తాయి: getApplicationDefault(factory) ఆధార అమలు యొక్క HTTP పనిని కవర్ చేస్తుంది; HttpTransportOptions Storage యొక్క HTTP సేవను కవర్ చేస్తుంది. రెండు కేటాయింపులలో ఏదీ మరొకదాన్ని స్వయంచాలకంగా కాన్ఫిగర్ చేయదు.
StorageOptions.http Java Storage 2.14.0 నుండి అందుబాటులో ఉంది. లైబ్రరీ రకాలను స్పష్టంగా ఉంచండి: HttpTransportOptions Google Cloud Coreకు మరియు NetHttpTransport Google యొక్క HTTP క్లయింట్ లైబ్రరీకి చెందుతాయి.
gRPC-నిర్దిష్ట Storage క్లయింట్కు మరో రవాణా ఉంటుంది. ఈ ఫ్యాక్టరీ అనుకూలీకరణ కోసం HTTP బిల్డర్ను ఎంచుకోండి, HTTP-మాత్రమే ఎంపికలను gRPC ఛానెల్కు జోడించకుండా.