2013-09-23 4 views
1

подключаю сделать метод пост как следующее:получает весь ответ от HttpClient PostMethod

try { 
      HttpClient client = new HttpClient(); 
      PostMethod method = new PostMethod(VERIFY_PAYMENT_ACTIONURL); 

      // key is the parameter 
      // MERCHANT_KEY is the value 
      method.addParameter("key", MERCHANT_KEY.trim()); 
      method.addParameter("command", VERIFY_PAYMENT_COMMAND.trim()); 
      method.addParameter("hash", hash); 
      method.addParameter("var1", transactionID); 
      method.addParameter("salt", ALGORIHTM_SHA512_SALT_KEY.trim()); 

      int statusCode = client.executeMethod(method); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

это работает отлично, и я получаю 200, как StatusCode, так как метод успеха. Я хотел бы получить весь ответ, так как я должен сделать еще несколько функций, основанных на ответе.

ответ от сервера массива, как следующее:

array('status' => '1', 
'msg' => 'Transaction Fetched Successfully', 
'transaction_details' => 
array(
unknown) 
) 
); 

и мне придется получить значение from the response like msg etc.

поэтому мои вопросы здесь, как я извлекается объект ответа, который возвращается из post call

бы кто-нибудь помочь мне в этом, пожалуйста ..

ответ

4

Используйте любой из:

byte[] data = method.getResponseBody(); 
String text = method.getResponseBodyAsString(); 
InputStream is = method.getResponseBodyAsStream(); 

Не забудьте позвонить method.releaseConnection(), когда вы переработали содержание (особенно если вы используете method.getResponseBodyAsStream())!

+0

спасибо, это помогло мне получить то, что я хочу :) –

+0

Я использую метод.getResponseBodyAsString, он печатает часть моего ответа, но не полную, ответ был отрезан .. – JasonHuang

2

Изменить HttpClient в org.apache.http.client.HttpClient интерфейс.

HttpClient httpClient = new DefaultHttpClient(); 
.. 
HttpResponse response = httpClient.execute(...); 

Внутри объекта ответа вы найдете то, что хотите.

+0

Genc благодарит за ваше драгоценное время. +1 за сообщение –

Смежные вопросы