

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Création d'une application simple à l'aide du AWS SDK pour Ruby
<a name="hello"></a>

Dites bonjour à Amazon S3 à l'aide du AWS SDK pour Ruby. L'exemple suivant affiche la liste de vos compartiments Amazon S3.

## Écrire le code
<a name="aws-ruby-sdk-hello-world-code"></a>

Copiez et collez le code suivant dans un nouveau fichier source. Nommez le fichier `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 Le SDK pour Ruby est conçu pour être modulaire et est séparé par Service AWS. Une fois la gemme installée, l'`require`instruction en haut de votre fichier source Ruby importe les classes et méthodes du AWS SDK pour le service Amazon S3. Pour obtenir la liste complète des joyaux de AWS service disponibles, consultez le tableau [des services pris en charge](https://github.com/aws/aws-sdk-ruby/#supported-services) du fichier README du AWS SDK for Ruby.

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

## Exécution du programme
<a name="aws-ruby-sdk-hello-world-running"></a>

Ouvrez une invite de commande pour exécuter votre programme Ruby. La syntaxe de commande typique pour exécuter un programme Ruby est la suivante : 

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

Cet exemple de code n'utilise aucun argument. Pour exécuter ce code, entrez ce qui suit dans l'invite de commande : 

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

## Remarque pour les utilisateurs Windows
<a name="aws-ruby-sdk-quick-start-windows"></a>

Lorsque vous utilisez des certificats SSL sous Windows et que vous exécutez votre code Ruby, une erreur similaire à la suivante peut s'afficher.

```
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'
...
```

Pour résoudre ce problème, ajoutez la ligne suivante à votre fichier source Ruby, quelque part avant votre premier AWS appel.

```
Aws.use_bundled_cert!
```

Si vous utilisez uniquement la `aws-sdk-s3` gemme dans votre programme Ruby et que vous souhaitez utiliser le certificat fourni, vous devez également ajouter la `aws-sdk-core` gemme.

## Étapes suivantes
<a name="aws-ruby-sdk-hello-world-next-steps"></a>

Pour tester de nombreuses autres opérations Amazon S3, consultez le [référentiel d'exemples de AWS code](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/ruby/example_code//s3) sur GitHub.