Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migrieren Sie vorsignierte URL-Downloads von AWS SDK für Java v1 auf v2
Migrieren Sie Ihren vorsignierten URL-Download-Code, um die asynchrone Verarbeitung zu nutzen und auf erweiterte Download-Optionen in Version 2 zuzugreifen. Dieses Thema zeigt, wie Sie von Version 1.x (v1) auf Version 2.x (v2) von migrieren. AWS SDK für Java Informationen zu den Download-Funktionen für vorsignierte URLs der Version v2 finden Sie unter. Arbeite mit Amazon S3 vorsignierte URLs
High-level Änderungen
In der folgenden Liste sind die wichtigsten Unterschiede zwischen Version 1 und Version 2 für vorsignierte URL-Downloads zusammengefasst:
-
Package:
com.amazonaws.services.s3→software.amazon.awssdk.services.s3. -
Client-Klasse:
AmazonS3(synchron) →S3AsyncClient(asynchron). -
Architektur: Synchrone blockierende Aufrufe → Asynchrone Aufrufe mit.
CompletableFuture -
Mehrteilig: Nur über Transfer Manager verfügbar → Direkt auf dem Client verfügbar mit.
multipartEnabled(true) -
Übertragungsmanager: Nur Dateiziel → Datei, Byte oder benutzerdefinierter Transformator.
Änderungen an Abhängigkeiten, Paketen und Klassennamen
Die folgende Tabelle zeigt die Änderungen der Abhängigkeiten und Klassennamen von Version 1 zu Version 2.
| Änderungen | v1 | v2 |
|---|---|---|
|
Maven-Abhängigkeiten |
|
|
| Package name | com.amazonaws.services.s3 |
software.amazon.awssdk.services.s3 |
| Klassennamen | AmazonS3, TransferManager |
S3AsyncClient, S3TransferManager |
1 Letzte Version
API-Änderungen
S3-Client-Downloads
In der folgenden Tabelle werden die API-Aufrufe der Versionen 1 und 2 für S3-Client-Downloads verglichen.
| Anwendungsfall | v1 | v2 |
|---|---|---|
| Erstellen des Clients |
|
|
| Generieren Sie eine vorsignierte URL |
|
|
| Erstellen Sie die Download-Anfrage |
|
|
| Zum Streamen herunterladen |
|
|
| In eine Datei herunterladen |
|
|
| Mit Reichweite herunterladen |
|
|
Transfer Manager lädt herunter
In der folgenden Tabelle werden API-Aufrufe der Versionen 1 und 2 für Transfer Manager-Downloads verglichen.
| Anwendungsfall | v1 | v2 |
|---|---|---|
| Erstellen Sie den Transfer Manager |
|
|
| Download |
|
|
Weitere Informationen finden Sie unter Über eine vorsignierte URL herunterladen.
Konfigurationsänderungen
S3-Client
In der folgenden Tabelle werden die Änderungen der S3-Client-Konfiguration von Version 1 auf Version 2 beschrieben.
| Einstellung | v1 | v2 |
|---|---|---|
| Mehrteilige Konfiguration | PresignedUrlDownloadConfig.withDownloadSizePerRequest(long) |
S3AsyncClient.builder().multipartConfiguration(c ->
c.minimumPartSizeInBytes(...)) |
| Benutzerdefinierte Header | PresignedUrlDownloadRequest.putCustomRequestHeader(String,
String) |
Nicht unterstützt Nur Range und If-Match kann beim Herunterladen festgelegt werden. |
Übertragungsmanager
In der folgenden Tabelle werden die Änderungen der Transfer Manager-Konfiguration von Version 1 auf Version 2 beschrieben.
| Einstellung | v1 | v2 |
|---|---|---|
| Verfolgung des Fortschritts | PresignedUrlDownloadConfig.withS3progressListener(...) |
PresignedDownloadFileRequest.builder().addTransferListener(...) |
| Bei erneuter Prüfung fortsetzen | PresignedUrlDownloadConfig.withResumeOnRetry(true) |
Nicht unterstützt |
| Pause/Resume | Nicht unterstützt | Nicht unterstützt |
Anmerkung
Der AWS CRT-based S3-Client (S3AsyncClient.crtBuilder()) unterstützt derzeit die vorsignierte URL-Erweiterung nicht. Verwenden Sie S3AsyncClient.builder().