2016-04-15 7 views
1

Ich habe API Gateway SDK für ios für meine API generiert. In SDK habe ich zwei Arten von Datei ein, die Anfrage und andere machen ist response-Antwort in AWS API Gateway iOS

1) TESTGetAllDataClient

2) TESTEmpty

let serviceClient = TESTGetAllDataClient.defaultClient() 
serviceClient.rootPost("2015").continueWithBlock{ (task:AWSTask!) -> (AnyObject!) in 
     if task.error != nil { 

      print(task.error) 

     } else { 

let resultDict :TESTEmpty = task.result as! TESTEmpty 

     } 
     return nil 
    } 

Hier TestEmpty ist die Art der response zu handhaben. Aber in meiner TestEmpty Klasse, die ich von API Gateway SDK habe, enthält keine Methode, Wörterbuch Objekt zu extrahieren. implementation classTestEmpty unter:

@implementation TESTEmpty 

+ (NSDictionary *)JSONKeyPathsByPropertyKey { 
    return @{ 

      }; 
} 

@end 

Muss ich meine eigenen Methoden schreiben, um die Antwort zu handhaben, oder es wird von SDK zur Verfügung gestellt werden? Bitte antworten Sie, wenn Sie etwas darüber wissen. Ich bin neu in AWS API Gateway.

Dank

Antwort

5

Das iOS SDK erzeugt die Basis-Klassen auf die Modelle in Ihrem API definiert. Es gibt ein Standardmodell namens "Empty", das durch Ihre Klasse "TestEmpty" repräsentiert wird. Da dieses Modell keine Eigenschaften/Attribute definiert, können Sie keine Daten daraus erhalten. Um die generierten SDKs sinnvoll zu verwenden, müssen Sie die erwartete Ausgabe Ihrer APIs mit Modellen definieren (siehe Use Models and Mapping Templates for Payload Mappings). Nachdem Sie diese Modelle definiert haben, stellen Sie sicher, dass Sie sie als "Antwortmodelle" auf der Seite "Methodenausführung" Ihrer Methoden verwenden.

Wenn Sie die obigen Schritte ausgeführt und Ihre API erneut bereitgestellt haben, sollten die generierten SDKs die Modellklassen enthalten, die Sie an Ihre Methoden angehängt haben. Sie können diese im SDK verwenden, um die Daten aus der HTTP-Antwort zu extrahieren.

hoffe, das hilft,

Jurgen, API-Gateway

+0

-Dank viel für Ihre response.Will versuchen, wie Sie vorgeschlagen. – Vandana

+2

Jurgen, ist es erforderlich, Modelle aufzustellen? Wenn mein Backend json zurückgibt und ich möchte, dass der Antworttext nur bis zum Client fließt, ist es in Ordnung, keine Modelle zu erstellen? Wir debuggen gerade ein Problem mit unserem generierten SDK und ich möchte sicherstellen, dass es nicht mit unserem Mangel an Modellen zusammenhängt. Vielen Dank! :) – readyornot