@Kurusa

Как получить ответ от Retrofit?

Я делаю GET запрос:

public interface CheckUserInDBRequest {
    @GET("api/checkUserInDB.php")
    Call<ResponseBody> searchForUser(
            @Query("login") String login,
            @Query("pass") String pass
    );
}

И получаю в ответ true || false в json, в соответственности от того есть пользоватеь в базе данных или нет.

Retrofit.Builder builder = new Retrofit.Builder().baseUrl("https://kurusa.zhecky.net/").addConverterFactory(GsonConverterFactory.create());

Retrofit retrofit = builder.build();

CheckUserInDBRequest client = retrofit.create(CheckUserInDBRequest.class);
Call<ResponseBody> call = client.searchForUser (
        UserLogin.getText().toString(),
        UserPass.getText().toString()
);

call.enqueue(new Callback<ResponseBody>() {
    @Override
    public void onResponse(@NonNull Call<ResponseBody> call, @NonNull Response<ResponseBody> response) {

        Toast.makeText(MainActivity.this, response.body().toString(), Toast.LENGTH_LONG).show();
    }

    @Override
    public void onFailure(@NonNull Call<ResponseBody> call, @NonNull Throwable t) {

        Toast.makeText(MainActivity.this, "no ", Toast.LENGTH_SHORT).show();
    }
});

Вот только выводит okHttp3. Не пойму как получить нормальный ответ.
  • Вопрос задан
  • 347 просмотров
Пригласить эксперта
Ответы на вопрос 2
orcDamnar
@orcDamnar
Java, C/C++, Android SDK
ну он должен с помощью ConverterFacetory вам генерировать сразу объект из JSON. например если объект {result:true} -
UserInDatabaseStatus{ 
     private boolean result; 
     public boolean getResult(){
          return result;
     } 
     public void setResult(boolean result){
          this.result = result
     }


и тогда :
@GET("api/checkUserInDB.php")
    Call<UserInDatabaseStatus> searchForUser(
            @Query("login") String login,
            @Query("pass") String pass
Ответ написан
Комментировать
@Gregary
Вот есть отличный туториал на русском языке и на Kotlin как работать с GSON и Retrofit androidschool.ru/courses/android-retrofit-and-gson
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы