手册
specifies的唯一性基于foreign_id和time字段.
我有一个用户加入特定事件的活动.该事件有自己的开始日期,我希望在时间轴中显示,因此我将其作为额外数据(以及名称和位置等)提交,但我在此省略了这些以防止混乱.
我将带有以下活动数组的活动提交给用户Feed.请注意我在阿姆斯特丹,这是(目前)在GMT 0200的时区:
Array
(
[actor] => User:3
[verb] => join
[object] => Event:2
[event_start] => 2016-09-26T19:00:00+0200
[to] => Array
(
[0] => notification:2
)
[foreign_id] => join:2
[time] => 2016-09-16T13:29:13+0200
)
当我检索用户的用户Feed时,会返回:
{
"duration":"17ms",
"next":"",
"results":[
{
"actor":"User:3",
"event_start":"2016-09-26T19:00:00+0200",
"foreign_id":"join:2",
"id":"cb0f4a80-7c00-11e6-8080-80010479bedb",
"object":"Event:2",
"origin":null,
"target":null,
"time":"2016-09-16T11:29:13.000000",
"to":[
"notification:2"
],
"verb":"join"
}
]
}
注意日期字段的差异.两者都作为ISO8601字段提交,但只返回event_start字段.时间字段以不同的格式返回,但没有任何时区指示符.它显然已转换为UTC时间,但它缺少the trailing Z that should indicate that.因此我不能可靠地将其用作时间指示器.
我可以通过向活动数组添加另一个时间字段来解决这个问题(工作正常并返回正确的ISO8601日期),但这感觉非常多余.
这是一个错误,我做错了什么或者我们不应该依靠时间字段来指示活动何时发生?
最佳答案 API v1.0以UTC时区存储时间字段,但遗憾的是它没有正确返回尾随Z.这将在以后的API版本中修复,但不会在此版本中修复.
在查询API时,您可以安全地期望时间字段始终以UTC格式返回.