2016-07-20 12 views
1

Ich verwende Google Endpoint und für eine meiner Entitäten möchte ich eine POST Anfrage erstellen, die eine Karte der Eigenschaften hinzufügt. Was ist der richtige Weg? Ich weiß, dass Google Endpoint einen Collection als Parameter erhalten kann, aber ich möchte eine Karte (unbekannte Schlüsselwerte) hinzufügen. Sollte ich einen JSON als Parameter übergeben oder einfach die JSON in den Körper der Anfrage einfügen und aus dem Objekt HttpServletRequest extrahieren?Was ist die richtige Methode zum Hinzufügen einer Karte in einer REST-Anforderung

Antwort

0

Jedes JSON-Objekt ist eine Karte, also scheint es die offensichtlichste Wahl zu sein. GSON macht es einfach, aber Sie können auch andere Parser verwenden.

Type type = new TypeToken<Map<String, String>>(){}.getType(); 
Map<String, String> myMap = gson.fromJson("{'k1':'apple','k2':'orange'}", type); 
+0

Und parsing es was? 'Eintrag '>? – RCB

+0

Nein, in Karte. Ich habe deine Antwort aktualisiert. –

+0

Cool danke. Außerdem habe ich tatsächlich gesehen, dass wenn ich einen Parameter 'Map data 'zur Endpunkt-Methodensignatur hinzufüge, bekomme ich alle JSON mit allen Parametern – RCB