Estamos tratando de calcular el desplazamiento de tiempo del cliente-servidor mediante el uso del valor EPOC enviado desde la API de back-end, al hacerlo, me encuentro con un problema en el lado del cliente/navegador local.
cuando obtengo EPOC de la API backend, es decir, serverEpocValue = 1653107370620 y trato de compararlo con el valor local de epoc, la diferencia no es de 6 horas como esperaba, es una diferencia de unos pocos milisegundos, ¿por qué el valor de epoc está cerca de la hora local en lugar de la hora del servidor? ?
const serverdate = new Date(1653107370620)serverDate = sábado 21 de mayo de 2022 09:59:30 GMT+0530 (fecha y hora del navegador local)
¿Cómo obtenemos la hora UTC del servidor usando epoc para calcular la compensación en el lado del cliente?
El tiempo a través de las instalaciones Date.now() siempre estará en milisegundos desde el 1 de enero de 1970 UTC y no considera las zonas horarias. Si necesita obtener el desplazamiento de la zona horaria, debe usar algo como Date.getTimezoneOffset
que devolverá el desplazamiento en minutos.