Exemplos de criação de um bucket - Amazon Simple Storage Service

Se fornecermos uma tradução da versão em inglês do guia, a versão em inglês prevalecerá caso haja qualquer conflito entre as versões. A tradução é fornecida com o uso de tradução por máquina.

Exemplos de criação de um bucket

Os exemplos de código a seguir criam um bucket por programação usando os AWS SDKs para Java, .NET e Ruby. Os exemplos de código executam as seguintes tarefas:

  • Criar um bucket, se ele não existir ainda — os exemplos criam um bucket ao executar as seguintes tarefas:

    • Crie um cliente especificando explicitamente uma região AWS (o exemplo utiliza o s3.eu-west-1 Região). Por conseguinte, o cliente comunica com Amazon S3 usando o s3.eu-west-1.amazonaws.com endpoint. Você pode especificar qualquer outra região da AWS. Para obter uma lista das regiões AWS, consulte Regiões e parâmetros de avaliação no Referência geral AWS.

    • Envie uma solicitação de criação de bucket especificando apenas um nome de bucket. A solicitação de criação de bucket não especifica outra Região da AWS. O cliente envia uma solicitação ao Amazon S3 de criar o bucket na Região que você especificou ao criar o cliente. Assim que você criou um bucket, você não pode alterar sua Região.

      nota

      Se você especificar explicitamente uma região da AWS na solicitação de criação do bucket que é diferente da região especificada ao criar o cliente, poderá obter um erro. Para obter mais informações, consulte Criação de um bucket.

      As bibliotecas de SDK enviam ao Amazon S3 uma solicitação PUT para criar o bucket. Para mais informações, consulte COLOCAR o balde.

  • Recuperar informações sobre a localização do balde—Amazon S3 guarda as informações de localização do balde no localização subrecurso associado ao balde. As bibliotecas SDK enviam o pedido do local GET Trace (consulte OBTER localização do balde) para recuperar esta informação.

Usar o Amazon S3 Console

Para criar um balde utilizando o Amazon S3 consola, consulte Como posso criar um balde S3? no Guia do usuário do console do Amazon Simple Storage Service.

Uso do AWS SDK for Java

Este exemplo mostra como criar um bucket do Amazon S3 usando o AWS SDK for Java. Para obter instruções sobre criar e testar um exemplo funcional, consulte Testar o Amazon S3 Exemplos de código Java.

import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.regions.Regions; import com.amazonaws.services.s3.AmazonS3; import com.amazonaws.services.s3.AmazonS3ClientBuilder; import com.amazonaws.services.s3.model.CreateBucketRequest; import com.amazonaws.services.s3.model.GetBucketLocationRequest; import java.io.IOException; public class CreateBucket2 { public static void main(String[] args) throws IOException { Regions clientRegion = Regions.DEFAULT_REGION; String bucketName = "*** Bucket name ***"; try { AmazonS3 s3Client = AmazonS3ClientBuilder.standard() .withCredentials(new ProfileCredentialsProvider()) .withRegion(clientRegion) .build(); if (!s3Client.doesBucketExistV2(bucketName)) { // Because the CreateBucketRequest object doesn't specify a region, the // bucket is created in the region specified in the client. s3Client.createBucket(new CreateBucketRequest(bucketName)); // Verify that the bucket was created by retrieving it and checking its location. String bucketLocation = s3Client.getBucketLocation(new GetBucketLocationRequest(bucketName)); System.out.println("Bucket location: " + bucketLocation); } } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }

Uso do AWS SDK para .NET

Para obter informações sobre como criar e testar um exemplo funcional, consulte Executar o Amazon S3 Exemplos de código.NET.

using Amazon; using Amazon.S3; using Amazon.S3.Model; using Amazon.S3.Util; using System; using System.Threading.Tasks; namespace Amazon.DocSamples.S3 { class CreateBucketTest { private const string bucketName = "*** bucket name ***"; // Specify your bucket region (an example region is shown). private static readonly RegionEndpoint bucketRegion = RegionEndpoint.USWest2; private static IAmazonS3 s3Client; public static void Main() { s3Client = new AmazonS3Client(bucketRegion); CreateBucketAsync().Wait(); } static async Task CreateBucketAsync() { try { if (!(await AmazonS3Util.DoesS3BucketExistAsync(s3Client, bucketName))) { var putBucketRequest = new PutBucketRequest { BucketName = bucketName, UseClientRegion = true }; PutBucketResponse putBucketResponse = await s3Client.PutBucketAsync(putBucketRequest); } // Retrieve the bucket location. string bucketLocation = await FindBucketLocationAsync(s3Client); } catch (AmazonS3Exception e) { Console.WriteLine("Error encountered on server. Message:'{0}' when writing an object", e.Message); } catch (Exception e) { Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message); } } static async Task<string> FindBucketLocationAsync(IAmazonS3 client) { string bucketLocation; var request = new GetBucketLocationRequest() { BucketName = bucketName }; GetBucketLocationResponse response = await client.GetBucketLocationAsync(request); bucketLocation = response.Location.ToString(); return bucketLocation; } } }

Uso do AWS SDK para Ruby Versão 3

Para obter informações sobre como criar e testar um exemplo funcional, consulte Usar o AWS SDK para Ruby - versão 3.

require 'aws-sdk-s3' # Creates a bucket in Amazon S3. # # @param s3_client [Aws::S3::Client] An initialized Amazon S3 client. # @param bucket_name [String] The bucket's name. # @return [Boolean] true if the bucket was created; otherwise, false. # @example # s3_client = Aws::S3::Client.new(region: 'us-east-1') # exit 1 unless bucket_created?(s3_client, 'my-bucket') def bucket_created?(s3_client, bucket_name) s3_client.create_bucket(bucket: bucket_name) rescue StandardError => e puts "Error while creating the bucket named '#{bucket_name}': #{e.message}" end

Uso de outros AWS SDKs

Para obter informações sobre a utilização de outros sdks AWS, consulte Código de amostra e bibliotecas.