web-dev-qa-db-fra.com

Comment passer une chaîne dans le paramètre 'Body' de Retrofit 2 dans android

@POST("api/login")
Call<ApiResponse> loginUser(@Body String user);

Ici, la chaîne est en fait une chaîne JSON, c'est-à-dire.

{"email":"[email protected]","password":"test"}

Impossible de comprendre ce qui ne va pas. Soit la chaîne est à nouveau convertie en json. Veuillez suggérer..

C'est ce que je veux faire à ma demande comme indiqué sur l'image.

enter image description here

12
Ranjana Dangol

Convertissez vos données en objet

public class Credentials
{
    public String email;
    public String password;
}

Définissez les données sur l'objet

Credentials loginCredentials = new Credentials();
loginCredentials.email = "[email protected]";
loginCredentials.password = "password";

Appelez votre API

@POST("api/login")
Call<ApiResponse> loginUser(@Body Credentials credentials);
25
Rohit5k2
@POST("api/login")
Call<ApiResponse> loginUser(@Body HashMap<String, String> user);

Nous pouvons utiliser Hasmap ici comme ceci.

17
Ranjana Dangol