Можно ли перейти на другую страницу в Vaadin, если я использую свой мобильный телефон? - PullRequest
1 голос
/ 01 апреля 2020

Я хочу создать специальную страницу в vaadin только для мобильного использования.

Предположим, что моей текущей страницей хоста является localhost:8080. Если я воспользуюсь своим телефоном, то сначала перейду на m.localhost:8080 (или, может быть, localhost:8080/m).

Возможно ли это?

Моя мобильная страница будет упрощенной страницей моей правильной страницы.

1 Ответ

2 голосов
/ 01 апреля 2020

Если вы хотите использовать отдельное имя хоста для мобильной версии, то, вероятно, лучше всего выполнить перенаправление еще до того, как Vaadin будет активно каким-либо образом вовлечен. Вы можете сделать это, используя, например, фильтр сервлетов, который проверяет все запросы и выбирает, выполнять ли перенаправление или передавать запрос обычному обработчику. Для этого вы можете посмотреть заголовок User-Agent. Соглашение состоит в том, что это значение заголовка будет содержать строку mobile где-то для устройств, которые хотят рассматриваться как мобильные устройства.

Другая альтернатива состоит в том, чтобы обслуживать оба варианта с одинаковым именем хоста и с использованием одного и того же приложения Vaadin. , но вместо этого реализуйте его так, чтобы, например, ваш основной компонент макета выбирал сам себя по-разному в зависимости от используемого устройства. Для этого вы также можете посмотреть заголовок пользовательского агента (используя VaadinRequest.getCurrent()).

...