2016-10-24 2 views
0

J'ai un POJO qui contient un seul jeton d'authentification dans une variable de chaîne. Je dois envoyer à mon API en utilisant le modèle suivant:Convertisseur de modification personnalisée à imbriquer JSON

{ “auth” : { api_key”:”XXXX” } } 

J'utilise Moshi pour convertir mes POJO en JSON, qui retourne

{"api-key":"XXXX"} 

Comment puis-je ajouter les supports supplémentaires à l'extérieur de mon actuel en utilisant un convertisseur de rénovation?

+0

Votre JSON n'est pas correct .. –

+0

Désolé @abhishukla, corrigé. –

Répondre

0

Vous pouvez utiliser Moshi-Lazy-Adapters pour placer le fichier json. Utilisez simplement l'annotation suivante lorsque vous envoyez le corps:

@POST("your_post_url") 
Call<YourResponseTypeHere> sendApiKey(@Body @Wrapped({"auth", "api_key"}) String apiKey); 

L'adaptateur de la bibliothèque fera le reste. Et vous n'avez pas besoin de déclarer un objet supplémentaire.

0

Je pense que vous devriez utiliser l'authentification oAuth. Ensuite, vous pouvez utiliser un interceptor pour Retrofit et remplir ce jeton.