how to get json response using retrofit

China☆狼群 提交于 2019-11-27 16:27:10
Vishva Dave

Try this :

Api client :

public class ApiClient {


    public static final String BASE_URL = "http://zeenatkhanniazai.com/services/";
    private static Retrofit retrofit = null;


    public static Retrofit getClient() {
        if (retrofit==null) {
            retrofit = new Retrofit.Builder()
                    .baseUrl(BASE_URL)
                    .addConverterFactory(GsonConverterFactory.create())
                    .build();
        }
        return retrofit;
    }
}

Api interface :

public interface ApiInterface {

    @POST("login.php")
    @FormUrlEncoded
    Call<users> getTopRatedMovies(@Field("uemail") String uemail, @Field("upassword") String upassword);

}

User class :

public class users
{
    @SerializedName("message")
    private String message;
    @SerializedName("status")
    private String status;

    public String getStatus() {
        return status;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public void setStatus(String status) {
        this.status = status;
    }
}

In main activity :

call.enqueue(new Callback<users>() {
            @Override
            public void onResponse(Call<users> call, Response<users> response) {
                progressDoalog.dismiss();
                int statusCode = response.code();
                String movies = response.body().getMessage();

                Log.e("sdasd",movies);
                //Log.w("response",new Gson().toJson(response));
                Log.w("response",new GsonBuilder().setPrettyPrinting().create().toJson(response));
              //  recyclerView.setAdapter(new MoviesAdapter(movies, R.layout.list_item_movie, getApplicationContext()));
            }

            @Override
            public void onFailure(Call<users> call, Throwable t) {
                progressDoalog.dismiss();
                // Log error here since request failed
                Log.e(TAG, t.toString());
            }
        });

Output :

Login unsuccessful :( This account doesn't exist or the email is not verified yet! try asking admin for activation and then logging in ;)

Response :

"body": {
      "message": "Login unsuccessful :( This account doesn\u0027t exist or the email is not verified yet! try asking admin for activation and then logging in ;)",
      "status": "0"
        },
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!