Изменить заголовок HTTP и перенаправить на другое веб-приложение (кросс-приложения) - PullRequest
1 голос
/ 02 марта 2012

Я нашел некоторые навыки для изменения заголовка http, но они не то, что мне нужно.Я пишу веб-приложение, которое изменяет заголовок http и перенаправляет в целевое веб-приложение.Кросс-приложение является проблемой.

Мое решение:

Создайте Valve в Tomcat, чтобы изменить заголовок в org.apache.catalina.Valve.invoke(Request, Response).Заголовок запроса изменяется до веб-приложения.

Есть идея получше?Спасибо!

1 Ответ

1 голос
/ 02 марта 2012

Вы имеете в виду «перенаправление» таким образом, чтобы клиент не знал об этом? Похоже, обратное проксирование. В таком случае вы можете написать HttpServlet и в его методе service(HttpServletRequest req, HttpServletResponse resp) переписать параметры запроса и выполнить запрос к службе назначения (например, используя HttpClient). Это платформо-независимое решение, поскольку вы не опираетесь на Apache's Catalina. Однако оба этих решения (сервлет, клапаны и, возможно, все остальные) имеют некоторые недостатки. Прокси-запросы и изменение запросов на лету не так просты, как об этом говорится во многих руководствах, особенно когда речь идет о таких аспектах, как потоковая передача или кодирование (если вы также хотите изменить контент).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...