Box.com Search API可检索确定文件夹中的所有文件

Rik*_*res 4 search box-api

我正在寻找获取特定文件夹的所有文件的方法.

但我在官方文档中找不到足够的信息

我想这样的事情:(我还假设用access_token设置自定义标头)

https://api.box.com/2.0/search?query=*
Run Code Online (Sandbox Code Playgroud)

这种方式不起作用,我认为查询不接受正则表达式...

任何的想法?


PS:一个真正的用例将有助于理解这个问题:

我的文件夹:

folderOne:
 |
 |_file1.jpg
 |
 |_file2.doc
 |
 |_folder1
 | |_file3.jpg
 | |_folder2
 |
 |_file4.pdf
Run Code Online (Sandbox Code Playgroud)

与搜索请求我想到只拿到file1.jpg,file2.docfile4.pdf.

Joh*_*err 5

您可以通过查询文件夹的内容然后过滤客户端的file项目来轻松完成此操作.

curl https://api.box.com/2.0/folders/FOLDER_ID/items \
-H "Authorization: Bearer ACCESS_TOKEN"
Run Code Online (Sandbox Code Playgroud)

这将返回项目的集合,从中你可以选择那些typefile.

{
  "total_count": 4,
  "entries": [
     {
        "type": "folder",
        "id": "192429928",
        "name": "folder1"
     },
     {
        "type": "file",
        "id": "818853862",
        "name": "file1.jpg"
     },
     {
        "type": "file",
        "id": "818853843",
        "name": "file2.doc"
     },
     {
        "type": "file",
        "id": "818853832",
        "name": "file4.pdf"
     }
  ]
}
Run Code Online (Sandbox Code Playgroud)

分页

Box将在任何文件元数据之前返回所有文件夹元数据 您可以计算这些文件夹以确定仅文件分页的适当偏移量.例如,如果您的Box文件夹有13个子文件夹,并且您希望一次翻页25个文件:

/folders/FOLDER_ID/items?limit=25&offset=13
/folders/FOLDER_ID/items?limit=25&offset=38
/folders/FOLDER_ID/items?limit=25&offset=63
/folders/FOLDER_ID/items?limit=25&offset=...
Run Code Online (Sandbox Code Playgroud)