Как узнать время браузера / клиента при загрузке страницы в портлете - PullRequest
0 голосов
/ 12 ноября 2009

Как узнать время браузера / клиента, когда страница загружается в портлет. Мне нужно сделать алгоритм, основанный на часовом поясе клиента. Это означает, что на этапе визуализации портлета мне нужно получить часовой пояс браузера. Возможно ли это, если да, то как?

Любая помощь с благодарностью.

Спасибо, Мичил

Ответы [ 2 ]

1 голос
/ 24 ноября 2009

Я думаю, что HTTP-запрос не содержит никакой информации о времени браузера / клиента, поэтому вам нужно как-то обойти это, используя javascript.Я нашел статью по этой проблеме здесь .

Я могу вспомнить пару стратегий, которые я мог бы использовать, в зависимости от обстоятельств:

  1. Захватить клиентавремя с использованием javascript на предыдущей странице портала и включение его в запрос к целевой странице с помощью отправки формы.
  2. Установите для представления портлета сообщение «Пожалуйста, подождите» при начальной загрузке страницы и отправьте клиенту время насервер через запрос AJAX.Когда запрос вернется, обновите представление портлета по мере необходимости.Если вы пишете портлет JSR 286, портлет может реализовать интерфейс ResourceServingPortlet, чтобы обеспечить ловушку (т. Е. Метод serveResource) для визуализации фрагментов разметки.Для получения дополнительной информации вы можете загрузить спецификацию JSR 286 здесь (см. Главу 14 «Работа с фрагментами через портлеты»).
  3. Используйте настройки портлета, чтобы установить часовой пояс по умолчанию для портлета.,Позвольте пользователям выбрать другой часовой пояс, если они захотят.Это дает вам полный контроль над часовыми поясами, которые вы поддерживаете, независимо от браузера или JavaScript вообще.Предпочтения портлета описаны в главе 17 спецификации, упомянутой в # 2 выше.
0 голосов
/ 12 ноября 2009

Я не знаю портлет, но если он имеет интерфейс javascript, возможно, вызовите dateObject.getTimezoneOffset () ?

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