私の要求を確認するためにすべてのヘッダーを印刷しようとしていますが、残念ながらすべてのヘッダーが内容の長さを出力しない理由を想定して印刷していますか?何が問題なの?ここで私はのContent-Lengthが自動的にあなたの要求のサイズに基づいて設定されたヘッダ財産であると考えてい内容の長さが印刷されない
public static String performPostCall(String requestURL,
String postDataParams, int length, PrintWriter pw) throws Exception {
URL url;
String response = "";
try {
url = new URL(requestURL);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(10000);
conn.setConnectTimeout(10000);
conn.setRequestMethod("POST");
conn.setRequestProperty("SOAPAction",
"http://tempuri.org/SendRequest");
conn.setRequestProperty(HTTP.CONTENT_TYPE,
"text/xml; charset=utf-8");
conn.setRequestProperty("Content-Length", String.valueOf(length));
conn.setDoInput(true);
conn.setDoOutput(true);
pw.println("Post request: " + url);
for (String header : conn.getRequestProperties().keySet()) {
if (header != null) {
for (String value : conn.getRequestProperties().get(header)) {
System.out.println(header + ":" + value);
}
}
}
pw.println(postDataParams);
//code..
return response;
}
リクエストを送信し、応答または応答コードを受信した後に、チェックを入れてください。あまりにも早くそれをチェックしているだけです。しかし、それがあなたが提供した価値に設定されることは期待しないでください。 Javaによって自動的に設定されます。 – EJP