Как передать необработанные данные JSON в Android-модификации - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть метод post в API, я хочу опубликовать данные в API как JSON raw.Когда я тестирую почтальона, он работает правильно.От моего его получения другой ответ.

Map<String, String> paramObject = new HashMap<>();
paramObject.put("username", "jino");
paramObject.put("password", "12345");
paramObject.put("confirmpassword", "12345");
paramObject.put("email", "jino@gmail.com");
paramObject.put("phone", "1234567898");
UserService service = RetrofitInstance.getRetrofitInstance().create(UserService.class);
Call<ResponseBody> call = service.signUp(paramObject);

Сервис

@POST("addnewuser.php")
Call<ResponseBody> signUp(@Body Map<String, String> body);

1 Ответ

0 голосов
/ 26 декабря 2018

Передайте JsonObject вместо Map:

public interface RetrofitService {
    @POST("addnewuser.php")
    Call<ResponseBody> signUp(@Body JsonObject body);
}

Создайте его следующим образом:

JsonObject jsonObject = new JsonObject();
jsonObject.addProperty("username", "jino");
jsonObject.addProperty("password", "12345");
jsonObject.addProperty("confirmpassword", "12345");
jsonObject.addProperty("email", "jino@gmail.com");
jsonObject.addProperty("phone", "1234567898");

И позвоните в службу Retrofit:

Call<ResponseBody> call = service.signUp(jsonObject);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...