#redirect #spring-mvc
#перенаправление #spring-mvc
Вопрос:
Я пытаюсь сделать так, чтобы пользователи видели один и тот же статический URL, хотя страница, на которой они находятся, изменится.
Например, я хочу, чтобы пользователь всегда видел:
www.mysite.com
Даже если я перенаправлю их на
www.mysite.com/1.html
www.mysite.com/2.html
www.mysite.com/2.jsp
и т.д…
У меня Spring MVC, и он скрывает JSP, но я хочу «статический скрытый URL». Кто-нибудь может сказать мне, как этого добиться?
Ответ №1:
Сопоставьте контроллер с «/» и настройте ViewResolvers для обработки каждого представления. Затем контроллеру необходимо направить запрос к соответствующему представлению, вернув другие имена представлений.
Обратите внимание, что без предоставления альтернативных URL-адресов вам нужно будет прибегнуть к Cookies, POST-запросам или другой логике, чтобы определить, какую страницу / представление отображать, что немного усложняет жизнь.
Серьезно подумайте, действительно ли вам нужен один URL на уровне HTTP-запроса. Если все, что вы хотите, это оставить адресную строку браузера неизменной, фреймы или AJAX могут быть более простым способом продвижения вперед, за кулисами они позволяют использовать разные URL-адреса без изменения адреса в верхней части окна браузера.