Hallo-Tutorial für das AWS SDK for Ruby - AWS SDKfür Ruby

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Hallo-Tutorial für das AWS SDK for Ruby

Sagen Sie Hallo zu Amazon S3 mit dem AWS SDK for Ruby. Im folgenden Beispiel wird eine Liste Ihrer Amazon S3-Buckets angezeigt.

Schreiben des Codes

Kopieren Sie den folgenden Code und fügen Sie ihn in eine neue Quelldatei ein. Benennen Sie die Datei 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 SDK for Ruby ist so konzipiert, dass es modular ist und durch getrennt istAWS-Service. Nachdem das Gem installiert wurde, importiert die -requireAnweisung oben in Ihrer Ruby-Quelldatei die AWS SDK-Klassen und -Methoden für den Amazon S3-Service. Eine vollständige Liste der verfügbaren AWS Service-Gems finden Sie in der Tabelle Unterstützte Services der README-Datei AWS SDK für Ruby.

require 'aws-sdk-s3'

Ausführen des Programms

Öffnen Sie eine Eingabeaufforderung, um Ihr Ruby-Programm auszuführen. Die typische Befehlssyntax zum Ausführen eines Ruby-Programms ist:

ruby [source filename] [arguments...]

Dieser Beispielcode verwendet keine Argumente. Um diesen Code auszuführen, geben Sie Folgendes in die Befehlszeile ein:

$ ruby hello-s3.rb

Hinweis für Benutzer von Windows

Wenn Sie SSL-Zertifikate unter Windows verwenden und Ihren Ruby-Code ausführen, wird möglicherweise eine Fehlermeldung ähnlich der folgenden angezeigt.

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

Um dieses Problem zu beheben, fügen Sie Ihrer Ruby-Quelldatei irgendwo vor Ihrem ersten AWS Aufruf die folgende Zeile hinzu.

Aws.use_bundled_cert!

Wenn Sie nur das aws-sdk-s3 Gem in Ihrem Ruby-Programm verwenden und das gebündelte Zertifikat verwenden möchten, müssen Sie auch das aws-sdk-core Gem hinzufügen.

Nächste Schritte

Um viele andere Amazon S3-Operationen auszuprobieren, sehen Sie sich das AWS Code Examples Repository auf an GitHub.