Posledný riadok je dôležitý: odvoďte klienta súborového systému z nakonfigurovanej služby namiesto spúšťania ďalšieho predvoleného builderu:

var proxy = new ProxyOptions(
    ProxyOptions.Type.HTTP,
    new InetSocketAddress("proxy.example.net", 8080));

var http = new NettyAsyncHttpClientBuilder()
    .proxy(proxy)
    .build();

var credential = new ClientSecretCredentialBuilder()
    .tenantId(tenantId)
    .clientId(clientId)
    .clientSecret(clientSecret)
    .httpClient(http)
    .build();

var service = new DataLakeServiceClientBuilder()
    .endpoint(accountUrl)
    .credential(credential)
    .httpClient(http)
    .buildClient();

var filesystem = service.getFileSystemClient(fileSystemName);

service.getFileSystemClient(fileSystemName) prenáša do potomka HTTP pipeline rodiča, koncový bod účtu a platnú konfiguráciu úložiska.

Príklad odovzdáva rovnaký http builderu poverení, pretože získanie tokenu je ďalšia cesta požiadavky. Samostatne zostavený klient súborového systému musí tiež dostať zamýšľanú prepravu; žiadny skorší builder nevytvára globálne predvolené nastavenie SDK.

Použite URL účtu, názov súborového systému a hodnoty identity aplikácie. ProxyOptions a typy prepravy Netty pochádzajú z Azure Core, builder poverení z Azure Identity a builder služby z Azure Storage Data Lake; InetSocketAddress pochádza z java.net.

accountUrl zostáva koncovým bodom úložiska a názov súborového systému vyberá potomka. Ani jedno z toho nie je adresa proxy. Ak je koncový bod úložiska verejne dostupný a máte povolenie používať verejného sprostredkovateľa, vyberte hostiteľa a port ProxyOptions zo zoznamu HTTP proxy; nastavenia úložiska a identity ponechajte bez zmeny.

Súvisiace články