Cargar un objeto en un bucket de directorio - Amazon Simple Storage Service

Cargar un objeto en un bucket de directorio

Después de crear un bucket de directorio de Amazon S3, puede cargar objetos en él. En estos ejemplos se muestra cómo cargar un objeto en un bucket de directorio mediante la consola de S3 y los SDK de AWS. Para obtener más información sobre las operaciones de carga de objetos de forma masiva con S3 Express One Zone, consulte Administración de objetos.

  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

  2. En el panel de navegación izquierdo, elija Instancias.

  3. Seleccione la pestaña Buckets de directorio.

  4. Elija el nombre del bucket en el que desea cargar sus carpetas o archivos.

  5. En la pestaña Objetos, elija Cargar.

  6. En la página Cargar, lleve a cabo alguna de las siguientes acciones:

    • Arrastre y suelte archivos y carpetas en el área de carga punteada.

    • Elija Agregar archivos o Agregar carpeta, elija los archivos o carpetas que desee cargar y, a continuación, seleccione Abrir o Cargar.

  7. En Sumas de comprobación, seleccione la función de suma de comprobación que desee usar.

    (Opcional) Si va a cargar un único objeto de un tamaño inferior a 16 MB, también puede especificar un valor de suma de comprobación precalculado. Al proporcionar un valor precalculado, Amazon S3 lo compara con el valor que calcula mediante la función de suma de comprobación seleccionada. Si los valores no coinciden, la carga no se iniciará.

  8. Las opciones de las secciones Permisos y Propiedades se configuran automáticamente con la configuración predeterminada y no se pueden modificar. El bloqueo de acceso público se habilita automáticamente. El control de versiones de S3 y el bloqueo de objetos de S3 no se pueden habilitar en los buckets de directorio.

    (Opcional) Si quiere añadir metadatos en pares clave-valor a sus objetos, expanda la sección Propiedades y, a continuación, en la sección Metadatos, elija Agregar metadatos.

  9. Para cargar inmediatamente los archivos y carpetas indicados, elija Cargar.

    Amazon S3 carga sus objetos y carpetas. Cuando finalice la carga, puede ver un mensaje de éxito en la página Cargar: estado.

SDK for Java 2.x
public static void putObject(S3Client s3Client, String bucketName, String objectKey, Path filePath) { //Using File Path to avoid loading the whole file into memory try { PutObjectRequest putObj = PutObjectRequest.builder() .bucket(bucketName) .key(objectKey) //.metadata(metadata) .build(); s3Client.putObject(putObj, filePath); System.out.println("Successfully placed " + objectKey +" into bucket "+bucketName); } catch (S3Exception e) { System.err.println(e.getMessage()); System.exit(1); } }
SDK for Python
import boto3 import botocore from botocore.exceptions import ClientError def put_object(s3_client, bucket_name, key_name, object_bytes): """ Upload data to a directory bucket. :param s3_client: The boto3 S3 client :param bucket_name: The bucket that will contain the object :param key_name: The key of the object to be uploaded :param object_bytes: The data to upload """ try: response = s3_client.put_object(Bucket=bucket_name, Key=key_name, Body=object_bytes) print(f"Upload object '{key_name}' to bucket '{bucket_name}'.") return response except ClientError: print(f"Couldn't upload object '{key_name}' to bucket '{bucket_name}'.") raise def main(): # Share the client session with functions and objects to benefit from S3 Express One Zone auth key s3_client = boto3.client('s3') # Directory bucket name must end with --azid--x-s3 resp = put_object(s3_client, 'doc-bucket-example--use1-az5--x-s3', 'sample.txt', b'Hello, World!') print(resp) if __name__ == "__main__": main()

En el siguiente comando de ejemplo de put-object, se muestra cómo puede utilizar la AWS CLI para cargar un objeto de Amazon S3. Para ejecutar este comando, sustituya los user input placeholders con su propia información.

aws s3api put-object --bucket bucket-base-name--azid--x-s3 --key sampleinut/file001.bin --body bucket-seed/file001.bin

Para obtener más información, consulte put-object en la Referencia de los c‎omandos de AWS CLI.