

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# バージョン 1 からバージョン 2 での Amazon S3 URI の解析の変更
<a name="migration-s3-uri-parser"></a>

このトピックでは、バージョン 1 (v1) からバージョン 2 (v2) での Amazon S3 URI の解析に関する変更点について詳しく説明します。

## 高レベル変更
<a name="migration-3-uri-parser-api-changes"></a>

v1 で S3 URI の解析を開始するには、コンストラクタを使用して `AmazonS3URI` をインスタンス化します。v2 では、`S3Utilities` のインスタンスで `parseUri()` を呼び出して `S3URI` を返します。


****  

| 変更 | v1 |  v2 | 
| --- | --- | --- | 
|    Maven の依存関係  |  <pre><dependencyManagement><br />    <dependencies><br />        <dependency><br />            <groupId>com.amazonaws</groupId><br />            <artifactId>aws-java-sdk-bom</artifactId><br />            <version>1.12.5871</version><br />            <type>pom</type><br />            <scope>import</scope><br />        </dependency><br />    </dependencies><br /></dependencyManagement><br /><dependencies><br />    <dependency>  <br />        <groupId>com.amazonaws</groupId><br />        <artifactId>s3</artifactId><br />    </dependency><br /></dependencies></pre>  |  <pre><dependencyManagement><br />    <dependencies><br />        <dependency><br />            <groupId>software.amazon.awssdk</groupId><br />            <artifactId>bom</artifactId><br />            <version>2.27.212</version><br />            <type>pom</type><br />            <scope>import</scope><br />        </dependency><br />    </dependencies><br /></dependencyManagement><br /><dependencies><br />    <dependency><br />        <groupId>software.amazon.awssdk</groupId><br />        <artifactId>s3</artifactId><br />    </dependency><br /></dependencies></pre>  | 
| パッケージ名 | com.amazonaws.services.s3 | software.amazon.awssdk.services.s3 | 
| クラス名 | [AmazonS3URI](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/AmazonS3URI.html) | [S3URI](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/S3Uri.html) | 

1 [最新バージョン](https://central.sonatype.com/artifact/com.amazonaws/aws-java-sdk-bom)。 2 [最新バージョン](https://central.sonatype.com/artifact/software.amazon.awssdk/bom)。

## API の変更
<a name="migration-3-uri-parser-api-changes"></a>


| 行動 | v1 |  v2 | 
| --- | --- | --- | 
| S3 URI を解析します。 |  <pre>URI uri = URI.create( "https://s3.amazonaws.com");<br /><br />AmazonS3Uri s3Uri = <br />    new AmazonS3URI(uri, false);</pre>  |  <pre>S3Client s3Client = S3Client.create();<br />S3Utilities s3Utilities =<br />    s3Client.utilities();<br /><br />S3Uri s3Uri =<br />    s3Utilities.parseUri(uri);</pre>  | 
| S3 URI からバケット名を取得します。 |  <pre>String bucket = s3Uri.getBucket();</pre>  |  <pre>Optional<String> bucket = s3Uri.bucket();</pre>  | 
| キーを取得します。 |  <pre>String key = s3Uri.getKey();</pre>  |  <pre>Optional<String> key = s3Uri.key();</pre>  | 
| リージョンを取得します。 |  <pre>String region = s3Uri.getRegion();</pre>  |  <pre>Optional<Region> region = s3Uri.region();<br /><br />String region;<br />if (s3Uri.region().isPresent()) {<br />    region = s3Uri.region().get().id();<br />}</pre>  | 
|  S3 URI がパススタイルであるかどうかを取得します。  |  <pre>boolean isPathStyle = s3Uri.isPathStyle();</pre>  |  <pre>boolean isPathStyle = s3Uri.isPathStyle();</pre>  | 
| バージョン ID を取得します。 |  <pre>String versionId = s3Uri.getVersionId();</pre>  |  <pre>Optional<String> versionId = <br />    s3Uri.firstMatchingRawQueryParameter("versionId");</pre>  | 
| クエリパラメータを取得します。 | 該当なし |  <pre>Map<String, List<String>> queryParams =<br />    s3Uri.rawQueryParameters();</pre>  | 

### 動作の変更
<a name="migration-s3-uri-parser-behavior-changes"></a>

#### URL エンコーディング
<a name="migration-s3-uri-parser-behavior-changes-URLencoding"></a>

v1 には、URI を URL エンコーディングするかどうかを指定するフラグを渡すオプションがあります。デフォルト値は `true` です。

v2 では、URL エンコーディングはサポートされていません。予約文字または安全でない文字を持つオブジェクトキーまたはクエリパラメータを使用する場合は、それらを URL エンコーディングする必要があります。たとえば、空白 `%20` を `" "` に置き換える必要があります。