2017-01-08 1 views
0

私は、jsのdate()の仕組みについてたくさんの話題があると知っていますが、1ビットが欠けています。私はサーバーとクライアントを持っている小さなWebアプリケーションに取り組んでいます。各クライアントは、WindowsまたはLinux(Macなど)で動作します。問題はafaikだから、もしあなたがWindowsのユーザーなら、あなたのPCの日付はworldclockサーバーを通してどこかで取り出されるだろう。それはマイクロソフトだが、あなたがLinuxを使っているならばあなたのコンピュータで日付/時刻が計算されている。 jsのdate()は、Windowsと同じように、サーバーに要求する日付(または時刻)を取得するか、指定されたPCの日付を見て、それを表示して表示しますか? 私にはデュアルブート可能なコンピュータがあり、LinuxからWindowsへのすべてのスイッチが時間の不正確さを引き起こすため、これは非常に重要です。つまり、JavaScriptがパソコンから読み込んだ場合、クライアントの間違った日付/時刻を考慮する必要があります。 。言い換えれば、JSのdate()は、IPに基づいてユーザーの位置情報を与えることによって、別のサーバーを要求する日時情報を取得しますか?ここからjavacriptが日付を取得する

答えて

2

ブラウザのDateの機能は、システムクロックを使用します。これは、オペレーティングシステムに関係なく当てはまります。

システムクロックは、GPSまたは携帯電話の信号を介して、NTPサーバー経由で手動で設定できます。これは、オペレーティングシステムに関係なく当てはまります。私は、デュアルブート可能なコンピュータおよびLinuxからWindowsへの各スイッチは、これはおそらく間違って1またはオペレーティング・システム構成の両方で設定された時間帯によって引き起こされる時間不正確

が発生しました

。ソフトウェアを作成する際に、そのような誤った設定を考慮する現実的な方法はありません。

+0

両方のOSでdate()を実行すると、異なる結果が得られますか? – KDX2

+0

@ KDX2 - そのうちのどれかの時計を正しく設定していないと言うので、はい。 – Quentin

+0

いいえ、タイムゾーンが原因ではありません。この現象についての記事はたくさんあります(このようなもの)(http://askubuntu.com/questions/169376/clock-time-is-off-on-dual-boot)。ローカル時間(ディストリビューションごとに異なる)でBIOSを設定するにはLinuxを切り替えるか、サポートされていないRealTimeIsUniversalレジストリ設定でBIOSをUTCで設定するようにWindowsを設定する必要があります。 JavaScriptについてのあなたの他のコメントは常にシステム時間を使用していますが、 –

関連する問題