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 ಬಿಲ್ಡರ್ ಆಯ್ಕೆಮಾಡಿ, gRPC ಚಾನೆಲ್ಗೆ HTTP-ಮಾತ್ರ ಆಯ್ಕೆಗಳನ್ನು ಜೋಡಿಸುವ ಬದಲು.