2012-05-31 10 views

Odpowiedz

20

Można ustawić pewne zmienne środowiskowe dla Apache HttpClient (np testowanej do 4.3.2).

System.setProperty("org.apache.commons.logging.Log","org.apache.commons.logging.impl.SimpleLog"); 
System.setProperty("org.apache.commons.logging.simplelog.showdatetime", "true"); 
System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http.wire", "DEBUG"); 

Istnieje również kilka zmiennych do debugowania:

System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http.impl.conn", "DEBUG"); 
System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http.impl.client", "DEBUG"); 
System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http.client", "DEBUG"); 
System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.http", "DEBUG"); 
+2

Aby uzyskać więcej opcji rejestrowania w zależności od środowiska, zobacz https://hc.apache.org/httpcomponents-client-ga/logging.html – vinksharma

+0

@Eran Medan Istnieje również HttpRequestInterceptor, jeśli chcesz zrobić to dla konkretnego wymagać –

-3

Spróbuj tego:

HttpClient client = new HttpClient(); 
PostMethod method = new PostMethod(url); 

method.setParameter(...., ....); 

odzyskać URI

System.out.println("getUri: " + method.getURI()); 

aby pobrać parametry POST

method.getRequestEntity().writeRequest(System.out); 
+1

System.out nie należy zachęcać do logowania –

+1

Podobał mi się ten przykład, ponieważ 'method.getRequestEntity(). writeRequest' pomógł mi wydrukować wniosek. – GameScripting

0
org.apache.http.client.fluent.Request#viaProxy 

Ta metoda może dokonać żądania przechodzą przez serwer proxy, więc może uruchomić lokalny serwer proxy, na przykład Skrzypek, więc to debugowanie proxy może pokazać szczegóły żądania HTTP i odpowiedzi.

Powiązane problemy