Azure Data Lake Java: zadržite izvedene klijente na proxy toku
Izvedite klijenta datotečnog sustava iz DataLakeServiceClienta konfiguriranog za proxy i konfigurirajte prijenos tokena identiteta u istoj postavci.
Posljednji red je važan: izvedite klijenta datotečnog sustava iz konfigurirane usluge umjesto da pokrenete još jedan zadani builder:
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) prenosi HTTP tok roditelja, krajnju točku računa i primjenjivu konfiguraciju pohrane na dijete.
Primjer daje isti http builderu vjerodajnica jer je dobivanje tokena još jedan put zahtjeva. Zasebno izgrađen klijent datotečnog sustava također mora dobiti namijenjeni prijenos; nijedan raniji builder ne stvara globalni zadani SDK.
Koristite URL računa, naziv datotečnog sustava i vrijednosti identiteta iz aplikacije. ProxyOptions i Netty prijenosni tipovi dolaze iz Azure Corea, builder vjerodajnica iz Azure Identityja, a builder usluge iz Azure Storage Data Lakea; InetSocketAddress dolazi iz java.net.
accountUrl ostaje krajnja točka pohrane, a naziv datotečnog sustava odabire dijete. Nijedno od toga nije adresa proxyja. Uz javno dostupnu krajnju točku pohrane i dopuštenje za korištenje javnog posrednika odaberite host i port ProxyOptionsa iz popisa HTTP proxyja; zadržite postavke pohrane i identiteta.