Serialize Query-Parameter in Retrofit

Stellen Sie sich die folgende Anfrage vor:

@POST("/recipes/create")
void createRecipe(@Query("recipe") Recipe recipe, Callback<String> callback);

Ich hätte gerne toJson (Rezept), aber leider ruft meine Anfrage nur toString () für mein Rezept auf, was überhaupt nicht funktioniert.

Ich könnte den toString in Recipe überschreiben, aber ich hätte lieber eine allgemeine Lösung.

Ich kann @Body nicht verwenden, da ich angeben muss, was ich sende (ich muss "recipe = json (theRecipe)" haben.

Ich kann auch die Serialisierung nicht ändern, um "recipe =" hinzuzufügen, da ich nicht für den Server verantwortlich bin.

Im Moment verwende ich eine QueryMap Map, in der ich ein serialisiertes Objekt einfüge. Obwohl dies funktioniert, ist es meiner Meinung nach keine sehr schöne Lösung.

Kann ich den Retrofit-Adapter irgendwie abfangen?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage