Modifications apportées à l'analyse d'Amazon S3 URIs de la version 1 à la version 2 - AWS SDK for Java 2.x

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modifications apportées à l'analyse d'Amazon S3 URIs de la version 1 à la version 2

Cette rubrique détaille les modifications apportées à l'analyse d'Amazon S3 URIs entre la version 1 (v1) et la version 2 (v2.).

Changements de haut niveau

Pour commencer à analyser un S3 URI en v1, vous instanciez un AmazonS3URI en utilisant un constructeur. Dans la v2, vous parseUri() faites appel à une instance deS3Utilities, pour renvoyer unS3URI.

Modification v1 v2

Dépendances de Maven

<dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-bom</artifactId> <version>1.12.5871</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.amazonaws</groupId> <artifactId>s3</artifactId> </dependency> </dependencies>
<dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>bom</artifactId> <version>2.27.212</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>s3</artifactId> </dependency> </dependencies>
Nom du package com.amazonaws.services.s3 software.amazon.awssdk.services.s3
Noms des classes AmazonS3URI S3URI

1 Dernière version. 2 Dernière version.

APImodifications

Attitude v1 v2
Analysez un S3URI.
URI uri = URI.create( "https://s3.amazonaws.com"); AmazonS3Uri s3Uri = new AmazonS3URI(uri, false);
S3Client s3Client = S3Client.create(); S3Utilities s3Utilities = s3Client.utilities(); S3Uri s3Uri = s3Utilities.parseUri(uri);
Récupérez le nom du compartiment depuis un S3URI.
String bucket = s3Uri.getBucket();
Optional<String> bucket = s3Uri.bucket();
Récupérez la clé.
String key = s3Uri.getKey();
Optional<String> key = s3Uri.key();
Récupérez la région.
String region = s3Uri.getRegion();
Optional<Region> region = s3Uri.region(); String region; if (s3Uri.region().isPresent()) { region = s3Uri.region().get().id(); }

Vérifiez si le S3 URI est un style de chemin.

boolean isPathStyle = s3Uri.isPathStyle();
boolean isPathStyle = s3Uri.isPathStyle();
Récupérez l'ID de version.
String versionId = s3Uri.getVersionId();
Optional<String> versionId = s3Uri.firstMatchingRawQueryParameter("versionId");
Récupérez les paramètres de requête. N/A
Map<String, List<String>> queryParams = s3Uri.rawQueryParameters();

Changements de comportement

URLencodage

v1 fournit la possibilité de transmettre un drapeau pour spécifier s'il URI doit être URL encodé. La valeur par défaut est true.

Dans la version 2, le URL codage n'est pas pris en charge. Si vous travaillez avec des clés d'objet ou des paramètres de requête contenant des caractères réservés ou non sécurisés, vous devez les URL encoder. Par exemple, vous devez remplacer un espace blanc " " par%20.