Даты и часовые пояса (javascript, java, распорки) - PullRequest
1 голос
/ 06 декабря 2011

Я уверен, что это очень распространенная проблема.

У меня есть действие Struts, использующее общий календарь jquery datepicker для выбора даты, которую будет использовать мой код. Проблема в том, что наши производственные серверы живут в Техасе на CST, но я нахожусь в Вашингтоне на EST. Мой веб-браузер отправляет 6/6/11 12:00 EST (полночь), и сервер интерпретирует его как 12/12/11 23:00 CST.

Любые рекомендуемые способы исправить это?

Должен ли я отправлять часовой пояс локального браузера в качестве параметра к коду моих веб-служб?

1 Ответ

1 голос
/ 06 декабря 2011

Если возможно, всегда имеет дело с временем UTC внутри вашего кода (и особенно в связи между компонентами). Преобразование в местное время в последний возможный момент перед отображением, где вы знаете , что такое часовой пояс пользователя.

В вашем случае перед отправкой на сервер конвертируйте метку времени в UTC в браузере .

Если вы делаете что-то вроде установки времени встреч в будущем, остерегайтесь перехода на летнее время, когда все сдвигается на час два раза в год (но UTC этого не делает). Например, пользователь будет ожидать, что установка встречи на «следующий вторник в 14:00» будет работать, даже если следующий вторник будет другим смещением UTC с этого момента.

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