Время на сервере, время на клиенте и moment.js

В 2014-01-27 01:15:36 в базу добавлена запись, через несколько минут читаю ее на клиенте и moment.js пишет "через час".

moment('2014-01-27 01:15:36').fromNow(); // В 2014-01-27 00:20:35 на клиенте выводит "через час"


Время на сервере и клиенте отличается на 1 час. Как быть, как решить проблему записей из будущего?
  • Вопрос задан
  • 3020 просмотров
Решения вопроса 1
dizballanze
@dizballanze
Software developer at Yandex
Самый верный способ, чтобы также обработать и тот случай, когда у пользователя просто неправильно настроено время:
- при загрузке брать время сервера, например можно брать заголовок Date у запроса или непосредственно спрашивать об этом сервер через ajax-запрос.
- конвертировать время в unixtimestamp
- найти разницу между timestamp клиента и сервера и учитывать её при расчетах
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Вести все записи в UTC.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы