Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
275 views
in Technique[技术] by (71.8m points)

android - Response in 202 STATUS in Retrofit2.0

i want to convert the Response in to JSON and show it to the User .I was able to display 200 response but in 202,i am failed.

{



            Log.d(TAG, "RESPONSE CODE" + response.code());
            if (response.code() == 200) {
                Gson gson = new Gson();
                SuccessResponse signupResponse = response.body();
                String sSignupResponse = gson.toJson(signUpResponse, SuccessResponse.class);
                try {

                } catch (JSONException e) {
                    e.printStackTrace();
                }


            } else if (response.code() == 202) {
                Log.d(TAG,"RESPONSE CODE IS "+"202 RIGHT");
                Gson gson = new Gson();
                SuccessResponse signupResponse = response.body();
                Log.d(TAG,"WHAT IS sSignupResponse"+signupResponse.toString());
                String sSignupResponse = gson.toJson(signUpResponse.toString());
                Log.d(TAG,"WHAT IS sSignupResponse"+sSignupResponse.toString());
                try {
                    JSONObject jsonObject=new JSONObject(sSignupResponse);
                    Log.d(TAG,"WHAT IS jsonObject"+jsonObject);
                } catch (JSONException e) {
                    e.printStackTrace();
                }


            } else {
                //request not successful (like 400,401,403 etc)
                //Handle errors
                Converter<ResponseBody, ErrorResponse> converter = ApiClient.getRetrofit().responseBodyConverter(ErrorResponse.class, new Annotation[0]);
                try {
                    ErrorResponse errors = converter.convert(response.errorBody());
                    dialogUtil.showOkDialog(errors.getMessage().toString());
                } catch (Exception e) {
                    dialogUtil.showOkDialog(e.getMessage().toString());
                }
            }

        }

should i do the same for 202 too? i created another POJO like ErrorResponse with message and code ,replaced the SuccessRespone with ErrorResponse

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

try this:

String sSignupResponse = gson.toJson(signUpResponse);

instead of

String sSignupResponse = gson.toJson(signUpResponse, SuccessResponse.class);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

57.0k users

...