Как переписать http-заголовок "Host" в HttpURLConnection? - PullRequest
9 голосов
/ 01 февраля 2012

Мой код похож на следующий:

URL url = new URL("1.0.0.25/otfg/services");
HttpURLConnection cnx = url.openConnection();
cnx.setRequestProperty("Host", "example.org");

Но когда я регистрирую исходящие пакеты с помощью tcpdump, http-заголовок "Host" равен 1.0.0.25.

Может ли быть так, что http-заголовок "Host" будет перезаписан на более поздней стадии процесса отправки, если да, как я могу избежать этого поведения.

1 Ответ

20 голосов
/ 01 февраля 2012

Повторяющийся вопрос.

Последний комментарий решил мою проблему:

System.setProperty("sun.net.http.allowRestrictedHeaders", "true")

Или при запуске виртуальной машины:

-Dsun.net.http.allowRestrictedHeaders=true
...