Ottenere un oggetto Amazon S3 da un punto di accesso multi-Regione con un SDK AWS - Esempi di codice per SDK AWS

Sono disponibili altri esempi per SDK AWS nel repository GitHub della documentazione degli esempi per SDK AWS.

Ottenere un oggetto Amazon S3 da un punto di accesso multi-Regione con un SDK AWS

L’esempio di codice seguente mostra come ottenere un oggetto da un punto di accesso multi-Regione.

Kotlin
SDK per Kotlin
Nota

Ulteriori informazioni su GitHub. Trova l’esempio completo e scopri di più sulla configurazione e l’esecuzione nel Repository di esempi di codice AWS.

Configura il client S3 per l’utilizzo dell’algoritmo di firma Asymmetric 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 }

Utilizza l’ARN del punto di accesso multi-Regione anziché un nome di bucket per recuperare l’oggetto.

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 }