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 অপশন যুক্ত করবেন না।