

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.

# Ein von API Gateway generiertes Ruby-SDK für eine REST-API verwenden
<a name="how-to-call-sdk-ruby"></a>

Im folgenden Verfahren wird die Verwendung eines Ruby SDK gezeigt, das mit API Gateway generiert wurde.

**Anmerkung**  
Für diese Anleitungen müssen Sie die Anleitungen unter [Generieren Sie SDKs für REST APIs in API Gateway](how-to-generate-sdk.md) ausgeführt haben.

**So installieren und instanziieren Sie ein von API Gateway generiertes Ruby-SDK für eine REST-API und rufen es auf:**

1. Entpacken Sie die heruntergeladene Ruby-SDK-Datei. Die generierte SDK-Quelle wird wie folgt angezeigt.  
![\[Entpacken Sie die heruntergeladene Ruby-SDK-Datei in einem Ruby-Modul\]](http://docs.aws.amazon.com/de_de/apigateway/latest/developerguide/images/ruby-gem-of-generated-sdk-for-simplecalc.png)

   

1.  Erstellen Sie mit den folgenden Shell-Befehlen einen Ruby-Gem aus der generierten SDK-Quelle in einem Terminalfenster:

   ```
   # change to /simplecalc-sdk directory
   cd simplecalc-sdk
   
   # build the generated gem
   gem build simplecalc-sdk.gemspec
   ```

   Anschließend ist **simplecalc-sdk-1.0.0.gem** verfügbar.

1.  Installieren Sie das Gem:

   ```
   gem install simplecalc-sdk-1.0.0.gem
   ```

1.  Erstellen Sie eine Client-Anwendung. Instanziiert und initialisiert den Ruby-SDK-Client in der App:

   ```
   require 'simplecalc-sdk'
   client = SimpleCalc::Client.new(
       http_wire_trace: true,
       retry_limit: 5,
       http_read_timeout: 50
   )
   ```

   Wenn die API über eine Autorisierung des konfigurierten `AWS_IAM` Typs verfügt, können Sie die AWS Anmeldeinformationen des Aufrufers angeben, indem Sie `accessKey` und `secretKey` während der Initialisierung angeben:

   ```
   require 'pet-sdk'
   client = Pet::Client.new(
       http_wire_trace: true,
       retry_limit: 5,
       http_read_timeout: 50,
       access_key_id: 'ACCESS_KEY',
       secret_access_key: 'SECRET_KEY'
   )
   ```

1.  Führen Sie API-Aufrufe über das SDK in der App durch. 
**Tipp**  
 Wenn Sie nicht mit den Konventionen des SDK-Methodenaufrufs vertraut sind, können Sie die `client.rb`-Datei im generierten `lib`-SDK-Ordner überprüfen. Der Ordner enthält die Dokumentation der einzelnen unterstützten API-Methodenaufrufe.

   So erkennen Sie unterstützte Operationen:

   ```
   # to show supported operations:
   puts client.operation_names
   ```

   Dies führt entsprechend der API-Methoden `GET /?a={.}&b={.}&op={.}`, `GET /{a}/{b}/{op}`und `POST /` jeweils folgender Anzeige sowie zu einer Nutzlast vom `{a:"…", b:"…", op:"…"}`-Format:

   ```
   [:get_api_root, :get_ab_op, :post_api_root]
   ```

   Für den Aufruf der `GET /?a=1&b=2&op=+`-API-Methode rufen Sie die folgende Ruby-SDK-Methode auf:

   ```
   resp = client.get_api_root({a:"1", b:"2", op:"+"})
   ```

   Für den Aufruf der `POST /`-API-Methode mit einer Nutzlast von `{a: "1", b: "2", "op": "+"}` rufen Sie die folgende Ruby-SDK-Methode auf:

   ```
   resp = client.post_api_root(input: {a:"1", b:"2", op:"+"})
   ```

   Für den Aufruf der `GET /1/2/+`-API-Methode rufen Sie die folgende Ruby-SDK-Methode auf:

   ```
   resp = client.get_ab_op({a:"1", b:"2", op:"+"})
   ```

   Die erfolgreichen SDK-Methodenaufrufe geben die folgende Antwort zurück:

   ```
   resp : {
       result: {
           input: {
               a: 1,
               b: 2,
               op: "+"
           },
           output: {
               c: 3
           }
       }
   }
   ```