Fazer upload de objetos em um bucket de diretório - Amazon Simple Storage Service

Fazer upload de objetos em um bucket de diretório

Depois de criar um bucket de diretório do Amazon S3, você pode fazer upload de objetos nele. Os exemplos a seguir mostram como fazer upload de um objeto em um bucket de diretório usando o console do S3 e os AWS SDKs. Para obter informações sobre as operações de upload de objetos em massa com a classe S3 Express One Zone, consulte Gerenciamento de objetos.

  1. Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  2. No painel de navegação à esquerda, escolha Buckets de diretórios.

  3. Escolha o nome do bucket no qual você deseja fazer upload de pastas ou arquivos.

  4. Na guia Objetos, escolha Fazer upload.

  5. Na página Fazer upload, execute uma das seguintes ações:

    • Arraste e solte arquivos e pastas para a área de upload tracejada.

    • Escolha Adicionar arquivos ou Adicionar pasta, selecione os arquivos ou as pastas que deseja carregar e escolha Abrir ou Fazer upload.

  6. Em Checksums, escolha a Função de soma de verificação que deseja usar.

    (Opcional) Se você estiver fazendo upload de um único objeto com menos de 16 MB, também poderá especificar um valor de soma de verificação pré-calculado. Quando você fornece um valor pré-calculado, o Amazon S3 compara esse valor com o valor calculado usando a função de soma de verificação selecionada. Se os valores não corresponderem, o upload não será iniciado.

  7. As opções nas seções Permissões e Propriedades são definidas automaticamente com as configurações padrão e não podem ser modificadas. A funcionalidade Bloqueio de Acesso Público é habilitada automaticamente, e as funcionalidades Versionamento do S3 e Bloqueio de Objetos do S3 não podem ser habilitadas para buckets de diretório.

    (Opcional) Se você quiser adicionar metadados em pares de chave e valor aos objetos, expanda a seção Propriedades e escolha Adicionar metadados na seção Metadados.

  8. Para fazer upload das pastas e dos arquivos listados, escolha Fazer upload.

    O Amazon S3 faz o upload de seus objetos e pastas. Quando o upload for concluído, você verá uma mensagem de sucesso na página Upload: status.

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 --zone-id--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()

O exemplo de comando put-object a seguir mostra como você pode usar a AWS CLI para carregar um objeto do Amazon S3. Para executar esse comando, substitua os user input placeholders por suas próprias informações.

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

Para obter mais informações, consulte put-object na Referência de comandos da AWS CLI.