У меня есть приложение nodejs
, которое размещено в IST
Сервер часового пояса. Приложение имеет конфигурацию для приема timezone
пользователя (Pacific Daylight Time). Поэтому на основе пользователя timezone
Мне нужно отобразить данные для него. Но когда я получаю timezone
для конкретного пользователя на сервере, чтобы получить некоторые статистические данные на сервере, даже если правильно выбрать timezone
, он все равно возвращает Date()
, относящийся к серверу, а не в соответствии с предпочтительным пользователем timezone
. Ниже приведен фрагмент кода, я следующее:Смещение временной зоны на стороне сервера nodejs
var offset=-8; //(Pacific Daylight Time)
var d = new Date(new Date().getTime() + offset * 3600 * 1000);
выше var d
будет по-прежнему иметь сервер часовой пояс схвачен и извлекает данные, основанные на сервере timezone
. Как я могу получить date
, относящийся к часовому поясу client
, на сервере?
Сроки, сами по себе, не имеют часовой пояс, их внутреннее значение времени UTC. Системный часовой пояс используется при создании «локальных» дат и при записи на вывод с использованием * Date.prototype.toString * и * toLocaleString *. Используйте UTC везде, и ваша проблема решена. – RobG
@RobG с использованием UTC означает, что при хранении данных «date» необходимо сохранить UTC? –
@RobG .. Я также читал, что хорошо использовать предпочтения от 'client' относительно' timezone' и хранить его. Тогда, вероятно, должен быть способ получить дату в отношении его предпочтения? –