2012-02-27 74 views
2

我一直在facebook應用程序上工作。但是我遇到了奇怪的錯誤(?)。facebook api日期格式

它我試圖獲得有關使用圖形API的任何事件的詳細信息start_date不同於如果我試圖使用fql得到它。例如:

  1. https://graph.facebook.com/209798352393506/ - 開始日期爲2011-05-26T19:00:00

  2. https://api.facebook.com/method/fql.query?query=select%20eid%2C%20name%2C%20tagline%2C%20pic%2C%20host%20%2C%20start_time%20from%20event%20where%20eid%20%3D209798352393506 - 啓動時間是1306461600.這在人類可讀的格式等於週五,2011年5月27日02: 00:00 GMT。

正如你可以看到得到的日期之間的差異是5個小時。 Somtimes我得到這8小時的不同日期,有時 - 6

正確的日期是第一個: http://www.facebook.com/events/209798352393506/

我無法弄清楚發生了什麼。我試圖查看的所有活動都來自丹麥。我的時區是歐洲/基輔。差異是1小時。

這是一個Facebook的錯誤?或記錄的功能?或者我做錯了什麼?

鏈接到文檔或其他答案在stackoverflow就足夠了。

下面是兩個事件

http://www.facebook.com/events/290600150977115/ - 上2012-03-22開始於20:00

http://www.facebook.com/events/289501924395338/ - 上2012-03-03在21:00開始

不過。使用FQL我得到的第一個事件在2012年3月23日04:00開始。差異是8個小時。第二個從2012-03-04 06:00開始。在這種情況下差異是9個小時。爲什麼???

這是因爲夏令時。

我和facebook(洛杉磯)之間的時差有時候是8小時,有時候是9小時,因爲有一段時間Denmakr alredy把時間改變爲夏令時和洛杉磯 - 而不是。

事件在「冬令時」開始並在夏季結束時發生問題。在這種情況下,我需要添加一個小時。

+0

也許區別是因爲時區, 可能第一個命令是在您的時區獲取時間和第二個在格林威治標準時間 – 2012-02-27 18:41:55

+0

感謝您的評論,但沒有。我的時區和事件創建者的時區之間的區別是1小時。我的時區是GMT + 2,事件 - GMT + 1。 – 2012-02-27 18:45:12

回答

3

Facebook很奇怪。

/fql/insights/

在此期間收集的指標的時間段的結束,表示爲UNIX時間(應該始終是午夜,太平洋夏令時)或使用函數end_time_date(),其採用'YYYY-MM-DD'格式的日期字符串。

2011-05-26T19:00:00 ===> 2011-05-26T19:00:00 PDT ===>星期五,2011 5月27日02:00:00 GMT。