Как обрабатывать пустое тело ответа в Android быстрой сети библиотеки? - PullRequest
0 голосов
/ 13 декабря 2018

как обработать пустое тело ответа в быстрой сетевой библиотеке Android ?Я знаю, в модернизации у нас есть пустота, но как справиться в быстрой сети.

POST-запрос, тип содержимого запроса JSON, пустое тело ответа с Http-кодом.

модифицированный эквивалент:

@POST("/path/to/get")
Call<Void> getMyData(/* your args here */);

мой код ниже

    @Override
    public Single<Response>  checkPhoneNumberAvailabilityApiCall(CheckPhoneNumberAvailabilityRequest checkPhoneNumberAvailabilityRequest) {

         return Rx2AndroidNetworking.post(ApiEndPoint.getEndPoint(ApiEndPoint.ENDPOINTS.CHECK_PHONE_AVAILABLE_API))
                .addHeaders(getHeaders(GENERAL))
                .addJSONObjectBody(convertToJSON(checkPhoneNumberAvailabilityRequest))
                .build()
                .getObjectSingle(Response.class);
    }

1 Ответ

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

У меня пока нет опыта в модернизации, но надеюсь, что это поможет

AndroidNetworking.post(YOUR_ENDPOINT)
                .addHeaders(YOUR_HEADER)
                .addJSONObjectBody(YOUR_JSONOBJECTBODY)
                .build()
                .getAsJSONObject(new JSONObjectRequestListener() {
                    @Override
                    public void onResponse(JSONObject response) {
                        if (response.toString().isEmpty()) {
                            //handle empty body
                        } else {
                            //do logic with json value
                        }
                    }

                    @Override
                    public void onError(ANError anError) {
                        //print log error code
                        Log.e("FAN_ERROR", "ERROR CODE : "+ anError.getErrorCode());
                        //print log error body
                        Log.e("FAN_ERROR", "ERROR BODY : "+ anError.getErrorBody());
                    }
                });
...