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();

Mae gosodiad arferol Application Default Credentials y rhaglen yn aros yn ei le. Lle caniateir proesi cyhoeddus ar gyfer pwyntiau terfyn Storage a thocynnau, mae'r rhestr proesi HTTP yn cynnig ymgeiswyr ar gyfer gwesteiwr a phorth InetSocketAddress. Cyflenwch y ffatri wrth lwytho'r cymwysterau hynny, cyn i'w ceisiadau tocyn HTTP fod ei hangen.

Mae dau fewnbwn yn defnyddio'r ffatri: mae getApplicationDefault(factory) yn cynnwys gwaith HTTP y gweithrediad cymwysterau; mae HttpTransportOptions yn cynnwys gwasanaeth HTTP Storage. Nid yw'r naill aseiniad yn ffurfweddu'r llall yn awtomatig.

Mae StorageOptions.http ar gael ers Java Storage 2.14.0. Cadwch fathau'r llyfrgelloedd yn glir: mae HttpTransportOptions yn perthyn i Google Cloud Core ac mae NetHttpTransport i lyfrgell cleient HTTP Google.

Mae gan gleient Storage sy'n benodol i gRPC drafnidiaeth arall. Dewiswch y builder HTTP ar gyfer y cyfaddasiad ffatri hwn yn hytrach na chysylltu opsiynau HTTP yn unig wrth sianel gRPC.

Erthyglau cysylltiedig