获取文件节点列表
本文提供调用「获取文件节点列表」接口的操作示例。
示例:获取指定空间站的工作目录下的最外层文件节点列表
假设你有一个空间站,空间站下的工作目录存放了很多文件节点(比如维格表、文件夹、收集表、镜像、仪表盘和自动化),你想获取这个工作目录下的最外层文件列表。
注意:
「获取文件节点列表」接口只支持返回工作目录下最外层的文件列表,如果你想返回工作目录下所有的文件节点列表,可以同时调用获取文件节点详情接口以达到目的;或者也可以使用搜索文件节点获取所有指定类型和权限的文件节点列表。
你的操作步骤如下:
获取你的 API Token。(获取方法)
获取你的空间站 ID。(获取方法)
打开你电脑上的终端,执行下列代码,向服务器发送查询请求(假设空间站 ID 为
spcX9P2xUcKst
):- cURL
- Javascript SDK
- Python SDK
curl -X GET \
"https://vika.cn/fusion/v1/spaces/spcX9P2xUcKst/nodes" \
-H "Authorization: Bearer {替换为你的 API Token}"注意:需要先下载和初始化 Javascript SDK,再执行如下命令。
// 获取指定空间站的一级文件目录
const nodeListResp = await vika.nodes.list({spaceId: 'spcX9P2xUcKst'})
if (nodeListResp.success) {
console.log(nodeListResp.data.nodes);
const nodes = nodeListResp.data.nodes
nodes.forEach(node=> {
// 当节点是文件夹时,可以执行下列代码获取文件夹下的文件信息
if (node.type === 'Folder') {
const folderDetailResp = await vika.nodes.get({spaceId: 'spcX9P2xUcKst', nodeId: node.id})
if (folderDetailResp.success){
// 打印文件夹下的子节点
console.log(folderDetailResp.data.children)
}
}
})
} else {
console.error(nodeListResp);
}注意:需要先下载和初始化 Python SDK,再执行如下命令。
for node in vika.space('spcX9P2xUcKst').nodes.all():
print(node.name)服务器会返回下列 JSON 数据包,
"nodes"
下即为返回的工作目录最外层的文件列表:有关返回结果中各参数的含义,可查看 API 手册。
{
"code": 200,
"success": true,
"data": {
"nodes": [
{
"id": "fom680eghkCem0wZxk",
"name": "新建收集表",
"type": "Form",
"icon": "",
"isFav": false
},
{
"id": "dsbWxTei5gdTvdAfKM",
"name": "新建仪表盘",
"type": "Dashboard",
"icon": "",
"isFav": false
},
{
"id": "fod23ha5NvyM5",
"name": "新建文件夹",
"type": "Folder",
"icon": "",
"isFav": false
},
{
"id": "dstZsEg3RpBvsdCgop",
"name": "测试专用模板3",
"type": "Datasheet",
"icon": "",
"isFav": true
}
]
},
"message": "SUCCESS"
}