Ich versuche, eine API zu verwenden, in denen eine der Endpunkte wie so mehrere Anforderungen in einem einzigen POST Körper akzeptiert:Übermittle ich diesen POST-Körper richtig mit Hilfe von Retrofit?
body:
{
"<requestId>": {
"actionFoo": "objId"
},
"<requestId>": {
"actionBar": "objId"
}
}
Die requestIds sind eindeutige Zeichenfolge, die auf der Client-Seite generiert werden. Ich erzeuge UUIDs für diese Werte. So
Ich habe versucht, Retrofit zu verwenden, um eine Api wie so definiert werden:
Zuerst habe ich definiert ein "Actioncommand" Objekt:
public class ActionCommand {
private String actionFoo;
private String actionBar;
}
und es in eine HashMap Karte zugeführt. Ich habe eine api wie folgt definiert:
@POST("/path/{someObjectId}/commands")
Map<String,ActionResponse> sendActions(@Path("someObjectId")String objectId, @Body Map<String, ActionCommand> actionMap);
Das Backend ist definitiv die objectId richtig bekommen, aber keine der Aktionen in der Karte. Ich bin mir nicht sicher, wie sonst sollte ich diese Parameter
Danke,
versuchen Sie, ob es hilft, die Eigenschaften zu veröffentlichen. Oder gibt es einen öffentlichen Getter für sie? – zapl