Box api v2“文件夹”响应太有限了

时间:2012-07-31 10:14:07

标签: box-api

我使用Box v2.0 api将Box集成到iOS应用程序中。

我遇到的第一个问题是对API的响应调用"条目"通过"文件夹" api请求太有限了。 api当前为每个文件夹返回的内容"条目"是这样的:

"entries" : 
[
    {
        "sequence_id": "0",
        "type": "file",
        "id": "2631999573",
        "name":"IMG_1312.JPG"
    },
    {
        "type":"folder",
        "id":"2305623799",
        "sequence_id":"1",
        "name":"a child folder"
    }
]

这意味着要检索子条目的基本元数据(大小,修改日期等),我必须为每个项发出REST请求。这显然效率很低。

有没有办法在"文件夹/"中获得更丰富的元数据?响应?可以通过在请求中提供合适的查询来过滤它。 e.g。

GET /folders/980980989?fields=name,id,type,size,modified_at

2 个答案:

答案 0 :(得分:4)

@auny

这非常非常低效。例如,我们的iOS应用程序是一个文件查看器 - 当用户导航到Box目录时,他们会看到该目录中所有文件的列表(在表格视图中)。视图由本地“模型”备份,该模型存储基本文件元数据(名称,大小,修改日期等)。每个文件都显示它的名称,大小和修改日期。

使用v2 api Box期望我们为目录中的每个文件(可能是100s,1000s或更多)进行单独的REST api调用,以确定大小和修改日期。这对于移动应用来说效率非常低。

不要忘记通常使用移动设备会影响性能的延迟(而不是带宽)。好吧,带宽可能也不是很好,但是100次REST调用的延迟将是一个主要问题。

1个REST调用来确定目录的基本元数据,即使在响应中需要更多的KB,也比100个单独的REST调用要好得多。

文件夹响应已经为每个目录条目提供了一些元数据,包含其他字段并不困难,即使这些字段仅在请求时可用。

疯狂。

答案 1 :(得分:-1)

是的,您必须查询每个子项以获取其在V2中的信息。没有其他方式