2016-08-19 229 views
0

我收到Log貓中Okhttp Logging攔截器的響應。但是,我無法從通話後的改裝回應中得到它。 這是帖子的呼叫:
Retrofit Post請求無法從服務器獲得響應Android

private void update(PostEntity postEntity){ 
    Call<ResponseEntity> call = baseProvider.getApiClient(). 
      createNewQuestion(mPrefs.getLoggedUserCityId(), postEntity); 

    call.enqueue(new Callback<ResponseEntity>() { 
     @Override 
     public void onResponse(Call<ResponseEntity> call, Response<ResponseEntity> response) { 
      Log.i("post:", response.body().toString()); 
     } 

     @Override 
     public void onFailure(Call<ResponseEntity> call, Throwable t) { 
      Log.i("Not Working", "Retrofit is not updating the feed!!"); 
     } 
    }); 
} 

d/OkHttp:OkHttp - 發送 - 米利斯:1471598299803
d/OkHttp:OkHttp-收到-米利斯:1471598300522
d/OkHttp:{ 「消息」: 「成功發佈」,「uuid」:「5dgiriWE4s4Sqhts」}

這裏我得到了response.body()。toString是可以的。我無法獲得okhttp攔截器輸出,以便從服務器存儲uuid。

+0

它是要失敗的方法 – Soham

+0

@Soham不,它是一個成功的調用,它只進入onResponse。但是響應沒有任何東西,Okhttp攔截器顯示在logcat中。 –

+0

ResponseEntity是什麼? – Soham

回答

0

什麼我假設response.body().toString()將返回像

ResponseEntity("message":"Posted Successfully","uuid":"5dgiriWE4s4Sqhts") 

所以的東西,如果你想,如果你想從中得到你所要做的就像下面uuid提取例如值(假設你的ResponseEntity類有gettersetter方法)

String udid=(ResponseEntity)(response.body()).getUDID() 

希望你會從中得到一個想法。

+0

這就是問題所在!我可以看到由okhttp日誌記錄攔截器給出的日誌中的響應。但是在改造的迴應中,我沒有提到任何東西。我得到的回覆@ 54393這不是我想要的東西 –

+0

那麼你有沒有嘗試過解決方案? – Soham

+0

@RahulN是你的問題解決? – Soham

相關問題