Cambios en el análisis de Amazon S3 URIs de la versión 1 a la versión 2 - AWS SDK for Java 2.x

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cambios en el análisis de Amazon S3 URIs de la versión 1 a la versión 2

En este tema se detallan los cambios en el análisis de Amazon S3 URIs de la versión 1 (v1) a la versión 2 (v2.).

Cambios de alto nivel

Para empezar a analizar un S3 URI en la versión 1, debe instanciar an AmazonS3URI mediante un constructor. En la versión 2, se parseUri() invoca una instancia deS3Utilities, para devolver un. S3URI

Cambio v1 v2

dependencias 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>
Package name com.amazonaws.services.s3 software.amazon.awssdk.services.s3
Nombres de clase AmazonS3URI S3URI

1 Última versión. 2 Última versión.

APIcambios

Comportamiento v1 v2
Parse y 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);
Recupera el nombre del bucket de un S3URI.
String bucket = s3Uri.getBucket();
Optional<String> bucket = s3Uri.bucket();
Recupera la clave.
String key = s3Uri.getKey();
Optional<String> key = s3Uri.key();
Recupera la región.
String region = s3Uri.getRegion();
Optional<Region> region = s3Uri.region(); String region; if (s3Uri.region().isPresent()) { region = s3Uri.region().get().id(); }

Recupera si el S3 URI es un estilo de ruta.

boolean isPathStyle = s3Uri.isPathStyle();
boolean isPathStyle = s3Uri.isPathStyle();
Recupera el ID de la versión.
String versionId = s3Uri.getVersionId();
Optional<String> versionId = s3Uri.firstMatchingRawQueryParameter("versionId");
Recupera los parámetros de la consulta. N/A
Map<String, List<String>> queryParams = s3Uri.rawQueryParameters();

Cambios de comportamiento

URLcodificación

v1 ofrece la opción de pasar una bandera para especificar si se URI debe URL codificar. El valor predeterminado es true.

En la versión 2, no se admite la URL codificación. Si trabaja con claves de objeto o parámetros de consulta que tienen caracteres reservados o no seguros, debe URL codificarlos. Por ejemplo, debe reemplazar un espacio en blanco " " por. %20