Abrufen eines S3-Objekts von einem Multi-Region-Zugangspunkt unter Verwendung eines AWS SDK - AWS-SDK-Codebeispiele

Weitere AWS-SDK-Beispiele sind im GitHub-Repository Beispiele für AWS Doc SDKs verfügbar.

Abrufen eines S3-Objekts von einem Multi-Region-Zugangspunkt unter Verwendung eines AWS SDK

Das folgende Codebeispiel zeigt, wie Sie ein Objekt von einem Multi-Region-Zugangspunkt abrufen.

Kotlin
SDK für Kotlin
Anmerkung

Auf GitHub finden Sie noch mehr. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS-Code-Beispiel- einrichten und ausführen.

Konfigurieren Sie den S3-Client so, dass er den Signaturalgorithmus Asymmetric Sigv4 (SigV4a) verwendet.

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 }

Verwenden Sie den ARN für den Multi-Region-Zugangspunkt eines Bucket-Namens.

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 }