Facebook graph api 显示2小时前、4周前等时间创建的Facebook评论
我正在编写一个与Facebook Graph API交互的脚本。我成功地阅读了评论,唯一要添加的是以“2小时前”、“4周前”等格式显示创建的时间字段 以下是Facebook在阅读帖子评论时向我展示的内容(我使用的是{post\u id}/comments?access\u token={…}端点): 我不知道创建时间是如何计算的。我注意到用户配置文件(/me)有一个名为时区的字段,但我不确定这是否与时间有关。我想知道当一个用户从不同的时区发帖(例如旅行时)时会发生什么,他的时区会更新吗 顺便说一句,我不是问如何计算时差,我已经知道怎么做了。我只想知道评论的时区以及它是如何计算的,这样我就可以做出正确的时差 不确定它是否相关,但我正在使用NodeJS&the 谢谢Facebook graph api 显示2小时前、4周前等时间创建的Facebook评论,facebook-graph-api,timezone,facebook-comments,Facebook Graph Api,Timezone,Facebook Comments,我正在编写一个与Facebook Graph API交互的脚本。我成功地阅读了评论,唯一要添加的是以“2小时前”、“4周前”等格式显示创建的时间字段 以下是Facebook在阅读帖子评论时向我展示的内容(我使用的是{post\u id}/comments?access\u token={…}端点): 我不知道创建时间是如何计算的。我注意到用户配置文件(/me)有一个名为时区的字段,但我不确定这是否与时间有关。我想知道当一个用户从不同的时区发帖(例如旅行时)时会发生什么,他的时区会更新吗 顺便说一
Alex查看一下,这是一个javascript日期库,提供了此功能以及更多功能。因为该值包含
+0000
,您知道它已经被调整为零偏移量,这将使其等同于UTC。因此,不需要源时区
既然您说您使用的是moment.js,那么只需将整个值传递给矩构造函数,包括偏移量。它将自动读取并调整到本地时区
moment("2014-03-17T11:44:39+0000")
如果您不想进行调整,只需切换回UTC即可
moment("2014-03-17T11:44:39+0000").utc()
无论使用哪种方法,您都可以使用moment的fromNow
函数来获取所需的字符串输出。如果您只需要调用utc
函数,则无需调用该函数:
moment("2014-03-17T11:44:39+0000").fromNow() // "2 hours ago" (or similar)
-
顺便说一下,Z
和+0000
之间的唯一区别是语义上的区别:
意味着该值以UTC为单位,无论是源自UTC还是已转换为UTCZ
或+0000
意味着该值取自当地时区,该时区在该时间点不偏离UTC,例如冬季的+00:00
,或全年的欧洲/伦敦
大西洋/雷克雅未克
- 如果您遵循,那么也有可能出现
,这意味着本地值未知,但该值被理解为UTC-00:00
然而,他们都提到了同一点,我怀疑Facebook是否试图暗示除了你应该将该值视为UTC之外的任何东西,所以我不担心它。;-) 我已经在使用Moment.js了,所以我说我知道如何计算时差。我的问题是评论的时区。
moment("2014-03-17T11:44:39+0000").fromNow() // "2 hours ago" (or similar)