デバッグの目的で、送信される生のリクエストを確認したいと思います。またはの API から直接 HTTP モニターなしでこれを取得する方法はありますHttpPostかHttpClient?
「ほぼ」重複する質問をいくつか見つけましたが、この特定の質問ではありません
デバッグの目的で、送信される生のリクエストを確認したいと思います。またはの API から直接 HTTP モニターなしでこれを取得する方法はありますHttpPostかHttpClient?
「ほぼ」重複する質問をいくつか見つけましたが、この特定の質問ではありません
Apache HttpClient のいくつかの環境変数を設定できます (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");
デバッグ用の変数もいくつかあります。
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");
    log4j2 や slf4j を使用しているすべての人にとって、言及されているすべてのソリューションは機能しませんでした。Maven pom に以下を追加しました。
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
        <version>1.7.30</version>
    </dependency>
log4j2.xml ファイルを追加するか、既存のファイルを使用して以下を追加します。
    <Logger name="org.apache.http">
        <Level>DEBUG</Level>
    </Logger>
もちろん、有効な log4j2.xml 構成のためには、いくつかのアペンダーを定義する必要があります。簡単な例はここにあります
これを試して:
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(url);
method.setParameter(...., ....);
URIを取得する
System.out.println("getUri: " + method.getURI());
POSTでパラメータを取得する
method.getRequestEntity().writeRequest(System.out);