Modifications apportées à l'analyse des URI Amazon S3 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 des URI Amazon S3 de la version 1 à la version 2

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

Changements de haut niveau

Pour commencer à analyser un URI S3 dans la version 1, vous instanciez un URI à l'aide AmazonS3URI d'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.21.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.

Modifications de l'API

Attitude v1 v2
Analyse un URI S3.
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 à partir d'une URI S3.
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 l'URI S3 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

Codage d'URL

v1 fournit la possibilité de transmettre un indicateur pour spécifier si l'URI doit être codé en URL. La valeur par défaut est true.

Dans la version 2, le codage d'URL 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 encoder par URL. Par exemple, vous devez remplacer un espace blanc " " par%20.