Hello tutorial per l'AWSSDK for Ruby - AWS SDK per Ruby

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Hello tutorial per l'AWSSDK for Ruby

Dai il benvenuto ad Amazon S3 utilizzando l'AWSSDK for Ruby. L'esempio seguente mostra un elenco dei tuoi bucket Amazon S3.

Scrivi il codice

Copia e incolla il codice seguente in un nuovo file sorgente. Assegnare un nome al file 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__

AWSSDK for Ruby è progettato per essere modulare ed è separato da. Servizio AWS Dopo l'installazione della gem, l'requireistruzione nella parte superiore del file sorgente Ruby importa le classi e i metodi AWS SDK per il servizio Amazon S3. Per un elenco completo dei AWS service gem disponibili, consulta la tabella Supported Services del AWS file README SDK for Ruby.

require 'aws-sdk-s3'

Esecuzione del programma

Apri un prompt dei comandi per eseguire il programma Ruby. La sintassi tipica dei comandi per eseguire un programma Ruby è:

ruby [source filename] [arguments...]

Questo codice di esempio non utilizza argomenti. Per eseguire questo codice, inserisci quanto segue nel prompt dei comandi:

$ ruby hello-s3.rb

Nota per gli utenti Windows

Quando utilizzi certificati SSL su Windows ed esegui il codice Ruby, potresti visualizzare un errore simile al seguente.

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

Per risolvere questo problema, aggiungi la riga seguente al file sorgente di Ruby, da qualche parte prima della prima chiamata. AWS

Aws.use_bundled_cert!

Se stai usando solo la aws-sdk-s3 gemma nel tuo programma Ruby e vuoi usare il certificato in bundle, devi aggiungere anche la gemma. aws-sdk-core

Passaggi successivi

Per testare molte altre operazioni di Amazon S3, consulta il AWSCode Examples Repository su. GitHub