在文档框中,它指出当“标记已添加到文件或文件夹'时,会发生事件TAG_ITEM_CREATE
。有没有办法找出标签被添加到哪个文件夹/文件,而不是全部迭代?
答案 0 :(得分:0)
如果你是fetching events for a Box enterprise,你可以让Box执行事件的服务器端过滤。但是,fetching events for a standard Box account时,您必须在应用程序中进行过滤。 next_stream_position
参数可用于为您收到的事件设置较低的时间范围,这可以显着减少您必须排序的元数据量。
编辑:回答评论中的问题。
问:不确定过滤事件如何帮助我确定哪个文件夹已被标记?
返回给你的event
对象如下所示:
{
"next_stream_position":1348790499819,
"entries":[
{
"event_type":"TAG_ITEM_CREATE",
"source":{
"type":"folder",
"id":"11446498",
... more event info ...
}
},
... more events ...
]
}
在您的应用中,您可以查找event_type
为TAG_ITEM_CREATE
的活动。然后,您可以使用source
来确定标记了哪个特定资源。
问:您是否说我可以要求自给定的TAG_ITEM_CREATE事件以来所有文件夹都已更改?
没有。将'next_stream_position`属性视为时间戳的代理。您可以使用它来告诉Box,“告诉我在这个'位置'之后发生的所有事件。”但是这仍然会为您提供发生的所有事件的类型。您必须在应用程序中选择感兴趣的事件。
这是面向企业和用户的API的重大差异之一。在企业中,您可以告诉Box,“我想知道昨天和今天之间企业中发生的所有TAG_ITEM_CREATE事件的信息。”在面向用户的API中,您可以有效地告诉Box,“我想知道自昨天以来在此用户框中发生的所有事件的信息。”