我正在與一個我無法更改的API進行通信,該請求在API端未經過驗證時發送400響應。這是一個有效的HTTP請求,但請求數據不會傳遞應用程序的驗證規則。在Android中獲取400 HTTP響應的響應正文?
400響應包含一個JSON負載,其中包含有關爲什麼請求未通過驗證的信息。
我似乎無法得到響應正文,因爲拋出了HttpRequestException。有誰知道如何檢索這個響應體?
try {
HttpUriRequest request = params[0];
HttpResponse serverResponse = mClient.execute(request);
BasicResponseHandler handler = new BasicResponseHandler();
String response = handler.handleResponse(serverResponse);
return response;
} catch(HttpResponseException e) {
// Threw HttpError
Log.d(TAG, "HttpResponseException : " + e.getMessage());
Log.d(TAG, "Status Code : " + e.getStatusCode());
// TODO API returns 400 on successful HTTP payload, but invalid user data
if(e.getStatusCode() == 400) {
// Information on API error inside Response body
}
}
請發送一些代碼 –