web-dev-qa-db-ja.com

androidでRetrofit 2の 'Body'パラメータに文字列を渡す方法

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

ここでは、文字列は実際にはJSONstringです。

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

これで何が悪いのか理解できませんでした。いずれかの文字列が再びjsonに変換されました。提案してください..

これは、写真に示されているように、私のリクエストに対応したいものです。

enter image description here

12
Ranjana Dangol

オブジェクト内のデータを変換する

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

データをオブジェクトに設定します

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

APIを呼び出す

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

ここで、このようにHasmapを使用できます。

17
Ranjana Dangol