facebookのアプリを作っていますが、facebookの時間の扱いは、非常に難しいです。
イベント情報を、javascriptで取得する場合、ログイン済みと、そうでない場合では、時間が異なります。
まだ、確信を得ているわけではありませんが、ブラウザからのタイムゾーン情報ではなく、ユーザーがfacebookに登録した場所(国)で、ユーザーの時差を計算しているのではないかと思います。
ログイン済みであれば、次のように、求めました。
取得したイベント時間 - 9(日本の時差) - 7(ロス時間の時差、サマータイムに注意)
この値を、Dateクラスに設定して、値を得ました。
ログインしていない場合、
取得したイベント時間を、Dateクラスに設定して、値を得ました。
とりあえず、これで、期待通りに動いていますが、引っかかるもの(間違いがありそう?)があります。
ブラウザに依存しないか心配です。
何か知っている方がおられたら、コメントを、お願いします。
参考までに、PHPであれば、サーバーサイドになるため、ここまでの手間は掛かりません。
しかし、時間が異なるのは同じのようです。
0 件のコメント:
コメントを投稿