2013-09-09 3 views
0

Я реализовал i18n и тему, используя переменную Locale и Theme в Spring MVC.Маска i18n и параметры темы в URL-адресе

Таким образом, все мои обычные URL-адреса появляются как

http://localhost/MyApp?lang=en&theme=red 

Теперь, если я изменить URL вручную, сайт отражает его немедленно.

Возможно ли их замаскировать, поэтому Пользователь не может изменить язык или тему, просто отредактировав URL-адрес?

+0

Что вы подразумеваете под «маскировкой»? Вы можете настроить имя параметра для использования параметрами 'paramName' свойства соответствующего' HandlerInterceptor'. Дополнительная информация в [справочном руководстве] (http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/mvc.html#mvc-localeresolver-interceptor). –

+0

masking i mean, i dnt хочу, чтобы параметры языка и темы отображались в URL-адресе – madhairsilence

+0

Я отправляю этот вопрос, потому что, я не знаю, как это сделать! – madhairsilence

ответ

0

Вы можете использовать шаблон PRG (POST-Redirect-GET). Вам потребуется перейти на страницу по запросу POST. И в вашем приложении создайте контроллер, который будет выполнять все бизнес-операции, а не перенаправляет пользователя на другой адрес без параметров запроса с GET-запросом и другим контроллером. Нет изменений пользователя, чем повлияет на вашу тему или язык.