Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Migrasi unduhan URL yang telah ditandatangani sebelumnya dari AWS SDK untuk Java v1 ke v2
Migrasikan kode unduhan URL yang telah ditandatangani sebelumnya untuk menggunakan pemrosesan asinkron dan mengakses opsi unduhan yang diperluas di versi 2. Topik ini menunjukkan cara bermigrasi dari versi 1.x (v1) ke versi 2.x (v2) dari. AWS SDK untuk Java Untuk informasi tentang kemampuan pengunduhan URL v2 yang telah ditandatangani sebelumnya, lihatBekerja dengan Amazon S3 URL yang telah ditandatangani sebelumnya.
High-level perubahan
Daftar berikut merangkum perbedaan utama antara v1 dan v2 untuk unduhan URL yang telah ditandatangani sebelumnya:
-
Package:
com.amazonaws.services.s3→software.amazon.awssdk.services.s3. -
Kelas klien:
AmazonS3(sinkron) →S3AsyncClient(asinkron). -
Arsitektur: Panggilan pemblokiran sinkron → Panggilan asinkron dengan.
CompletableFuture -
Multipart: Hanya tersedia melalui Transfer Manager → Tersedia langsung pada klien dengan
multipartEnabled(true). -
Manajer Transfer: Hanya tujuan file → File, byte, atau transformator khusus.
Perubahan dependensi, paket, dan nama kelas
Tabel berikut menunjukkan ketergantungan dan perubahan nama kelas dari v1 ke v2.
| Ubah | v1 | v2 |
|---|---|---|
|
Ketergantungan Maven |
|
|
| Nama paket | com.amazonaws.services.s3 |
software.amazon.awssdk.services.s3 |
| Nama kelas | AmazonS3, TransferManager |
S3AsyncClient, S3TransferManager |
1 Versi terbaru
Perubahan API
Unduhan klien S3
Tabel berikut membandingkan panggilan API v1 dan v2 untuk unduhan klien S3.
| Kasus penggunaan | v1 | v2 |
|---|---|---|
| Buat klien |
|
|
| Hasilkan URL yang telah ditandatangani sebelumnya |
|
|
| Buat permintaan unduhan |
|
|
| Unduh untuk streaming |
|
|
| Unduh ke file |
|
|
| Unduh dengan jangkauan |
|
|
Unduhan Manajer Transfer
Tabel berikut membandingkan panggilan API v1 dan v2 untuk unduhan Transfer Manager.
| Kasus penggunaan | v1 | v2 |
|---|---|---|
| Buat Manajer Transfer |
|
|
| Unduh |
|
|
Untuk informasi selengkapnya, lihat Unduh menggunakan URL yang telah ditandatangani sebelumnya.
Perubahan konfigurasi
Klien S3
Tabel berikut menjelaskan perubahan konfigurasi klien S3 dari v1 ke v2.
| Pengaturan | v1 | v2 |
|---|---|---|
| Konfigurasi multipart | PresignedUrlDownloadConfig.withDownloadSizePerRequest(long) |
S3AsyncClient.builder().multipartConfiguration(c ->
c.minimumPartSizeInBytes(...)) |
| Header kustom | PresignedUrlDownloadRequest.putCustomRequestHeader(String,
String) |
Tidak didukung. Hanya Range dan If-Match dapat diatur pada waktu download. |
Manajer Transfer
Tabel berikut menjelaskan perubahan konfigurasi Transfer Manager dari v1 ke v2.
| Pengaturan | v1 | v2 |
|---|---|---|
| Pelacakan kemajuan | PresignedUrlDownloadConfig.withS3progressListener(...) |
PresignedDownloadFileRequest.builder().addTransferListener(...) |
| Lanjutkan saat mencoba lagi | PresignedUrlDownloadConfig.withResumeOnRetry(true) |
Tidak didukung |
| Pause/Resume | Tidak didukung | Tidak didukung |
catatan
Klien AWS CRT-based S3 (S3AsyncClient.crtBuilder()) saat ini tidak mendukung ekstensi URL yang telah ditandatangani sebelumnya. Gunakan S3AsyncClient.builder().