2012-02-21 16 views
1

Webサービスがサーバーとは異なるタイムゾーンからの要求を受け入れる場合、DST値を処理する最適な方法は何ですか? (:00:00.000から05:00 2012-02-21T05)JavaScriptでDSTとタイムゾーンを処理する方法

私はDSTを考慮してほしいが、維持またはへの接続のオーバーヘッドをしたくない

私のWebサービスは、ISO8601規格を使用して日付文字列を受け入れます別のタイムゾーンから自分のサーバーに入ってくるリクエストごとにDSTを取得するデータベース。

私が考えているアプローチの1つは、サーバーのデフォルトのDST設定を使用してから、入ってくる各要求に対して、自分のサーバーと同じタイムゾーンに変換します。処理が完了したら、文字列をクライアントと戻ります。応答データの変換は、サーバーまたはクライアント上で行うことができます。

提案がありますか?

+5

DSTは、お尻の愚かな痛みです。 GTM/UTCにすべてを保存し、必要に応じて必要に応じて変換し直します。 –

答えて

2

ここで私は何をしますか。データ/時間を提出する前に、文字列をJavaScript Dateオブジェクトに解析します。次にgetTime()と呼び出して、その値を送信してください。 getTime()は、UTCエポックからのミリ秒数を返します。したがって、実際には時間が正規化されます。その後、ユーザーにデータを返すときは、UTCミリ秒の値をDateオブジェクトのコンストラクタに渡して、時間を表示します。デフォルトでは、ユーザーのタイムゾーンに表示されます。

3

また、Javascriptで日付オブジェクトを処理するためのXDateプロジェクトを見ることもできます。 JodaTime(Javaの場合)と非常に似ています。非常に使いやすくセマンティックです。

関連する問題