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 ചാനലിലേക്ക് ചേർക്കുന്നതിന് പകരം.

അനുബന്ധ ലേഖനങ്ങൾ