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 اختیارات منسلک کرنے کے بجائے۔

متعلقہ مضامین