View a markdown version of this page

使用 AWS SDK 从多区域接入点中获取 Amazon S3 对象 - Amazon Simple Storage Service

使用 AWS SDK 从多区域接入点中获取 Amazon S3 对象

以下代码示例显示如何从多区域接入点中获取对象。

Kotlin
SDK for Kotlin
注意

查看 GitHub,了解更多信息。在 AWS 代码示例存储库中查找完整示例,了解如何进行设置和运行。

将 S3 客户端配置为使用非对称 Sigv4(Sigv4a)签名算法。

suspend fun createS3Client(): S3Client { // Configure your S3Client to use the Asymmetric SigV4 (SigV4a) signing algorithm. val sigV4aScheme = SigV4AsymmetricAuthScheme(DefaultAwsSigner) val s3 = S3Client.fromEnvironment { authSchemes = listOf(sigV4aScheme) } return s3 }

使用多区域接入点 ARN 而不是桶名称来检索对象。

suspend fun getObjectFromMrap( s3: S3Client, mrapArn: String, keyName: String, ): String? { val request = GetObjectRequest { bucket = mrapArn // Use the ARN instead of the bucket name for object operations. key = keyName } var stringObj: String? = null s3.getObject(request) { resp -> stringObj = resp.body?.decodeToString() if (stringObj != null) { println("Successfully read $keyName from $mrapArn") } } return stringObj }

有关 AWS SDK 开发人员指南和代码示例的完整列表,请参阅 使用 AWS SDK 通过 Amazon S3 进行开发。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。