2016-07-24 28 views
1

嗨,我正在使用android studio和使用volley api的網絡調用。 因爲從網絡調用中獲取JsonObject和String作爲響應都很好。獲取HttpResponse對象作爲來自Volley api的響應,而不是android中的jsonobject或字符串

是否有可能從volley api獲取HttpResponse?或者我們可以檢索HttpResponse的任何方法?

因爲我必須使用外部jar,在哪個方法中我可以獲取HttpResponse對象作爲輸入參數。

此外,我們從volley api獲取NetworkResponse對象,我們可以從中獲取HttpResponse嗎?

+0

請提供一些示例代碼以幫助我們瞭解您的問題 – Daniel

+1

儘管如此,我仍不清楚您要做什麼,請分享一些代碼片段。這將有助於明確目標。 –

+0

提供您的代碼,以幫助我們瞭解您的問題 – SaravInfern

回答

2

雖然我不完全清楚您面臨的問題或問題。 讓我猜你希望來自請求的Http響應並將其發佈到另一個API調用的服務器?如果這是你的問題,簡單的解決方案是重寫parseNetworkResponse在makeStringReq()

StringRequest strReq = new StringRequest(Method.GET, 
     Const.URL_STRING_REQ, 
     new Response.Listener<String>() { 
      @Override 
      public void onResponse(String response) { 
       Log.d(TAG, response.toString()); 
       msgResponse.setText(response.toString()); 
       hideProgressDialog(); 

      } 
     }, 
     new Response.ErrorListener() { 
      @Override 
      public void onErrorResponse(VolleyError error) { 
       VolleyLog.d(TAG, "Error: " + error.getMessage()); 
       hideProgressDialog(); 
      } 
     }) { 

    @Override 
    protected Response<String> parseNetworkResponse(NetworkResponse response) { 
     int mStatusCode = response.statusCode; 
     return super.parseNetworkResponse(response); 
    } 
}; 

// Adding request to request queue 
AppController.getInstance().addToRequestQueue(strReq, tag_string_req); 

,那麼你可以張貼mStatusCode到服務器。

如果我錯了,我猜的只是讓我知道。 **如果有遺囑,則有**方式,您知道:)

+0

感謝vutka,即我實施。只想從parseNetworkResponse(...)的NetworkResponse對象中知道是否可以在HttpResponse對象中進行轉換?實際上,外部jar方法僅將HttpResponse對象作爲輸入參數。 – user2021938

+0

據我所知網絡響應包含httpresponse代碼。不要認真對待,因爲我不太確定。我會在做一些RND @ user2021938 –

+0

感謝之後讓你知道支持。我也會試試:) – user2021938

相關問題