Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

158
Views
Luxon DateTime.utc() devuelve diferentes horas en diferentes dispositivos

He estado leyendo durante días sobre zonas horarias y compensaciones, pero parece que no puedo resolver esto.

Tengo una aplicación de cuestionarios en la que el cliente tiene 5 minutos para resolver un cuestionario. Cuando el cliente envía una solicitud para iniciar la prueba, el servidor registra la hora de inicio de la prueba como ese instante y la end_time start_time start_time + 5min .

Este end_time se envía al navegador, que luego muestra un temporizador de cuenta regresiva al cliente calculando la diferencia entre current_time y end_time del navegador. El problema es que la current_time del navegador es diferente en diferentes dispositivos, incluso si están en la misma zona horaria. Si un dispositivo está 2 minutos por delante de la hora estándar de su zona horaria, su prueba finaliza 2 minutos antes que cualquier otro dispositivo.

Intenté usar la hora UTC universalmente, tanto en el servidor como en el cliente, sin embargo, en el mismo instante exacto, luxon.DateTime.utc() devuelve una hora diferente en cada dispositivo. La hora de mi teléfono está 2 minutos por delante de la hora de mi computadora portátil, por lo que DateTime.utc() devuelve, en mi teléfono, una hora que está 2 minutos por delante de la de mi computadora portátil. No quiero que la hora del dispositivo se convierta a UTC, quiero un marco de referencia de tiempo absoluto que no varíe con la hora del dispositivo.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No encontré la respuesta a cómo se puede implementar el método que mencioné anteriormente, pero encontré otra forma de implementar el temporizador.

En lugar de que el servidor envíe la end_time al navegador, el servidor envía la hora remaining_time , que es end_time-server_current_time . El cliente recibe este remaining_time y establece la cuenta regresiva para el client_current_time+remaining_time .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!