2013-02-27 3 views
0

녹음 날짜에 mongodb에 데이터를 쓸 때 node.js에 new Date()를 사용하고 해당 날짜를 ajax 응답으로 반환합니다. mongodb의 데이터가 클라이언트 측에서 새 날짜를 만드는 순간부터 경과 된 시간을 계산합니다. 그럼 내가 현재 날짜와 서버에서 온 날짜의 차이를 계산합니다.Node.js 레코드 날짜가 현재 클라이언트 날짜보다 높음

여기 내 코드입니다 : 나에게 알 수없는

var now = new Date(); 
var post_date = new Date(date_from_server); 
var elapsed = now - post_date/1000; 
document.write(elapsed + " seconds elapsed"); 

그러나, 녹화 날짜는 현재 날짜보다 크고, 처음으로 그들 사이의 차이는 -40 초 값을 가지고!

이 점에 대해 이해해주십시오. 나는 그것이 내가 잘못하고있는 것이라고 생각한다. 그러나 무엇이 잘못 되었습니까?

+0

시스템 클럭이 동기화 되었습니까? – RobG

+0

아니요.하지만 타임 스탬프를 사용합니다. –

+0

죄송합니다. 방금 서버 관리자로부터 소식을 받았습니다. 서버 시간이 40 초의 편차라고했습니다. –

답변

0

서버와 클라이언트 사이의 시간 설정이 다른 것 같습니다. getFinalTime 이벤트를 서버로 보내면 두 번째 시간이 기록되고 계산을 위해 클라이언트로 리턴됩니다.

+0

분명합니다. :) 그러나 서버에서받은 날짜가 생성 된 날짜보다 빠를 수 있습니까? –

+0

@ VladimirTitsky 예를 들어, 서버의 시간이 오늘이고 클라이언트의 시간이 어제 인 경우 1 일 차이가 날 것입니다. – coderLMN

+0

그 점을 이해합니다. 하지만 서버 시간은 오늘이고 클라이언트 시간 (서버의 경우)은 서버 시간이고 서버에서 응답을 기다리는 데는 몇 초가 걸립니다. –

관련 문제