HttpURLConnection не позволяет установить заголовок «Via»

Я пытаюсь использовать java.net.HttpURLConnection для отправки HTTP-запроса на сервер. Один из HTTP-заголовков, которые мне нужно отправить, — «Via». В моем коде есть что-то вроде этого:

connection.addRequestProperty("X-test", "test_header_contents"); // just a sanity test
connection.addRequestProperty("Via", "via_header_contents");

Когда я использую анализатор пакетов, я вижу, что тестовый заголовок проходит, а заголовок via — нет. Я знаю, что Via является «ограниченным» заголовком, поэтому я добавил эту строку:

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

Эта строка работала, когда у меня была такая же проблема в прошлом, но сейчас она не работает. Я знаю, что системное свойство устанавливается, потому что я вызываю System.getProperty прямо перед попыткой добавить заголовки HTTP, и оно возвращает true. Есть ли что-то еще, что я должен сделать, чтобы иметь возможность отправлять заголовок через? Как я уже сказал, это работало раньше, но не сейчас. Я думаю, что единственное, что изменилось, это то, что я перешел с Java 6 на 7. Спасибо за любую помощь, которую вы можете мне оказать.

5
задан user1473404 21 June 2012 в 21:53
поделиться