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 และเก็บการตั้งค่าการจัดเก็บและข้อมูลระบุตัวตนไว้ตามเดิม