android快速联网库中如何处理空响应正文?

时间:2018-12-13 12:41:30

标签: android retrofit android-networking

如何处理android fast networking library中的空响应正文? 我知道在改造中我们会遇到空白,但是如何处理快速联网。

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 :(得分:0)

我还没有翻新经验,但是希望对您有所帮助

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());
                    }
                });