Azure Data Lake Java: туынды клиенттерді прокси желісінде ұстаңыз
Файлдық жүйе клиентін проксимен конфигурацияланған DataLakeServiceClient-тен алыңыз және идентификациялық токен тасымалын сол баптауда конфигурациялаңыз.
Соңғы жол маңызды: файлдық жүйе клиентін конфигурацияланған қызметтен алыңыз, тағы бір әдепкі 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) ата-ананың HTTP желісін, тіркелгінің соңғы нүктесін және қолданылатын сақтау конфигурациясын балаға жеткізеді.
Мысалда сол http тіркелгі деректерінің builder-іне беріледі, өйткені токен алу — сұраныстың басқа жолы. Бөлек құрылған файлдық жүйе клиенті де өзіне арналған тасымалды алуы керек; бұрынғы builder жаһандық SDK әдепкісін жасамайды.
Қолданбаның тіркелгі URL-ін, файлдық жүйе атауын және идентификация мәндерін пайдаланыңыз. ProxyOptions және Netty тасымал түрлері Azure Core-дан, тіркелгі деректерінің builder-і Azure Identity-ден, қызмет builder-і Azure Storage Data Lake-тен келеді; InetSocketAddress java.net-тен.
accountUrl сақтаудың соңғы нүктесі болып қалады, ал файлдық жүйе атауы баланы таңдайды. Екеуі де прокси мекенжайы емес. Сақтау нүктесіне қоғамдық қолжетімділік және қоғамдық делдалды пайдалану рұқсаты болса, ProxyOptions хосты мен портын HTTP прокси тізімінен таңдаңыз; сақтау және идентификация параметрлерін орнында қалдырыңыз.