Как правильно определить время на клиенте, если у пользователя неправильно настроен часовой пояс в ОС?
========================================================================================================

 На одном из проектов несколько раз столкнулся с очень неприятной проблемой связанной с жизнью токена и неправильно настроенным временем у клиента в ОС.  
  

Сервер (время на сервере настроено верно) генерирует JWT токен с временем жизни 1 час. На клиенте неверно настроен часовой пояс, допустим должен быть +03:00, а на деле +00:00. Отсюда получаем проблему что когда на клиенте я проверяю жив ли еще токен, то сразу после логина получается что токен просрочен, в нашем случае на 2 часа.  
  

На данном проекте клиентов у проекта не много и можно каждому отдельно объяснить, что надо просто правильно настроить часовой пояс. Но что если бы клиентов была сотни тысяч? Как тогда решить эту проблему?  
  

Мне в голову приходит вариант брать на клиенте не его локальное время, а забирать его откуда-то с внешнего сервера, но быстрое гугление мне особо не дало результатов. Возможно смотрю не в том направлении? Подскажите кто сталкивался с подобными ситуациями?  
  

Небольшой скринкаст для понимания сути проблемы: <https://youtu.be/C3Oo1bDtI84> 

 Так в вашем вопросе есть и ответ. Проблема в часовом поясе, исключите проблему, то есть уберите зависимость от часового пояса. Используйте UTC время 

 Гугль, например никак не решает эту проблему, он просто пишет, вы не можете залогиниться потому что у вас неправильно настроено время на компе. 

 Нашел вот такое апи [worldtimeapi.org](http://worldtimeapi.org) попробую использовать его для определения настоящего времени вместо клиентского