

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Crear una aplicación sencilla con el AWS SDK for Ruby
<a name="hello"></a>

Da la bienvenida a Amazon S3 con el AWS SDK for Ruby. En el siguiente ejemplo se muestra una lista de sus buckets de Amazon S3.

## Escritura del código
<a name="aws-ruby-sdk-hello-world-code"></a>

Copie y pegue el siguiente código en un nuevo archivo de origen. Nombre el archivo `hello-s3.rb`.

```
require 'aws-sdk-s3'

# Wraps Amazon S3 resource actions.
class BucketListWrapper
  attr_reader :s3_resource

  # @param s3_resource [Aws::S3::Resource] An Amazon S3 resource.
  def initialize(s3_resource)
    @s3_resource = s3_resource
  end

  # Lists buckets for the current account.
  #
  # @param count [Integer] The maximum number of buckets to list.
  def list_buckets(count)
    puts 'Found these buckets:'
    @s3_resource.buckets.each do |bucket|
      puts "\t#{bucket.name}"
      count -= 1
      break if count.zero?
    end
    true
  rescue Aws::Errors::ServiceError => e
    puts "Couldn't list buckets. Here's why: #{e.message}"
    false
  end
end

# Example usage:
def run_demo
  wrapper = BucketListWrapper.new(Aws::S3::Resource.new)
  wrapper.list_buckets(25)
end

run_demo if $PROGRAM_NAME == __FILE__
```

AWS El SDK for Ruby está diseñado para ser modular y está separado por Servicio de AWS. Una vez instalada la gema, la instrucción de `require` que aparece en la parte superior del archivo fuente de Ruby importa las clases y los métodos del SDK de AWS para el servicio Amazon S3. Para obtener una lista completa de las gemas de AWS servicio disponibles, consulta la tabla de [servicios compatibles](https://github.com/aws/aws-sdk-ruby/#supported-services) del archivo README de AWS SDK for Ruby.

```
require 'aws-sdk-s3'
```

## Ejecución del programa
<a name="aws-ruby-sdk-hello-world-running"></a>

Abra un comando para ejecutar su programa Ruby. La sintaxis de comando habitual para ejecutar un programa Ruby es: 

```
ruby [source filename] [arguments...]
```

Este ejemplo de código no utiliza argumentos. Para ejecutar este código, introduzca el siguiente comando del sistema: 

```
$ ruby hello-s3.rb
```

## Nota para usuarios de Windows
<a name="aws-ruby-sdk-quick-start-windows"></a>

Cuando utiliza certificados SSL en Windows y ejecuta el código Ruby, podría ver un error similar al siguiente.

```
C:\Ruby>ruby buckets.rb
C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (Seahorse::Client::NetworkingError)
         from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `block in connect'

         from C:/Ruby200-x64/lib/ruby/2.0.0/timeout.rb:66:in `timeout'
         from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:921:in `connect'
         from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:862:in `do_start'
         from C:/Ruby200-x64/lib/ruby/2.0.0/net/http.rb:857:in `start'
...
```

Para solucionar este problema, añade la siguiente línea a tu archivo fuente de Ruby, en algún lugar antes de la primera AWS llamada.

```
Aws.use_bundled_cert!
```

Tenga en cuenta que si solo utiliza la gema `aws-sdk-s3` en su programa de Ruby, también tendrá que añadir la gema `aws-sdk-core` para utilizar el certificado agrupado.

## Siguientes pasos
<a name="aws-ruby-sdk-hello-world-next-steps"></a>

Para probar muchas otras operaciones de Amazon S3, consulte el [repositorio de ejemplos de AWS código](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/ruby/example_code//s3) en GitHub.