功能描述
用于列出目录或相簿内容。
接口说明
目录内容的列出顺序为:首先按照字典序列出子目录,随后根据上传时间列出媒体库中的媒体资源,或根据文件名列出文件库的中文件资源。
请求
请求示例
GET /api/v1/directory/
{LibraryId}
/{SpaceId}
/{DirPath}
?page={Page}
&page_size={PageSize}
&order_by={OrderBy}
&order_by_type={OrderByType}
&filter={DirectoryFilter}
&access_token={AccessToken}
&user_id={UserId}
请求参数:
LibraryId:媒体库 ID,必选参数。
SpaceId:空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(
-
);如果媒体库为多租户模式,则必须指定该参数。DirPath:目录路径或相簿名,对于多级目录,使用斜杠(
/
)分隔,例如 foo/bar
;可选参数,对于根目录,该参数留空。Page:分页码,默认第一页,可选参数。
PageSize:分页大小,默认20,可选参数。
OrderBy:排序字段,按名称排序为 name,按修改时间排序为 modificationTime,按文件大小排序为 size,按创建时间排序为 creationTime,可选参数。
OrderByType:排序方式,升序为 asc,降序为 desc,可选参数。
DirectoryFilter:筛选方式,可选,不传返回全部,onlyDir 只返回文件夹,onlyFile 只返回文件。
AccessToken:访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数。
UserId:用户身份识别,当访问令牌对应的权限为管理员权限且申请访问令牌时的用户身份识别为空时用来临时指定用户身份,详情请参见 生成访问令牌接口,可选参数。
请求体
该请求无请求体。
响应
响应码
获取成功,返回 HTTP 200 OK。
响应体
application/json
响应体示例:
{"path": [ "foo", "bar" ],"nextMarker": 1013,"fileCount": 10,"subDirCount": 8,"totalNum":18,"localSync": {"syncId": 4,"strategy": "local_to_cloud","isSyncRootFolder": true,"syncUserId": "123"},"contents": [{"name": "sub-dir1","path":["xxx","xxx"],"type": "dir","creationTime": "2020-09-22T07:43:01.000Z","modificationTime": "2020-09-22T07:43:01.000Z","versionId":2,"localSync": {"syncId": 4,"strategy": "local_to_cloud","syncUserId": "","isSyncRootFolder": false,},"authorityList": {"canView": false,"canPreview": false,"canDownload": false,"canUpload": false,"canDelete": false,"canModify": false,"canAuthorize": false,"canShare": false}},{"name": "sub-dir2","type": "dir","creationTime": "2020-09-22T07:43:14.000Z","modificationTime": "2020-09-22T07:43:14.000Z"},{"name": "file1.jpg","type": "file","creationTime": "2020-09-22T07:44:45.000Z","modificationTime": "2020-09-22T07:44:45.000Z","contentType": "image/jpg","size": "1048576","eTag": "xxx","crc64": "xxx","authorityList": {"canView": false,"canPreview": false,"canDownload": false,"canUpload": false,"canDelete": false,"canModify": false,"canAuthorize": false,"canShare": false},"metaData": {"x-smh-meta-foo": "bar"},"previewByDoc": true,"previewByCI": true,"previewAsIcon": true,"fileType": "powerpoint",},{"name": "file2.docx","type": "file","creationTime": "2020-09-22T07:46:08.000Z","modificationTime": "2020-09-22T07:46:08.000Z","contentType": "application/vnd.openxmlformats-officedocument.wordprocessingm","size": "1048576","eTag": "xxx","crc64": "xxx","metaData": {"x-smh-meta-foo": "bar"},"previewByDoc": true,"previewByCI": true,"previewAsIcon": true,"fileType": "powerpoint",}],"authorityList": {"canView": false,"canPreview": false,"canDownload": false,"canUpload": false,"canDelete": false,"canModify": false,"canAuthorize": false,"canShare": false,"canPreviewSelf": false,"canDownloadSelf": false}}
响应体字段说明:
path:字符串数组,返回当前请求的目录结构,如果当前请求的是根目录,则该字段为空数组。
fileCount:整数,当前目录中的文件数(不包含孙子级)。
subDirCount:整数,当前目录中的子目录数(不包含孙子级)。
totalNum:整数,当前目录中的所有文件和子目录数量(不包含孙子级)。
contents:对象数组,目录或相簿内的具体内容:
name:字符串,目录或相簿名或文件名。
path:文件具体目录。
versionId:版本号。
type:字符串,条目类型:
dir
:目录或相簿。file
:文件,仅用于文件类型媒体库。image
:图片,仅用于媒体类型媒体库。video
:视频,仅用于媒体类型媒体库。symlink
:符号链接。creationTime:ISO 8601格式的日期与时间字符串,表示目录或相簿的创建时间或文件的上传时间,例如
2020-10-14T10:17:57.953Z
。modificationTime:文件最近一次被覆盖的时间,或者目录内最近一次增删子目录或文件的时间。
contentType:媒体类型。
size:文件大小,为了避免数字精度问题,这里为字符串格式。
eTag:文件 ETag。
crc64:文件的 CRC64-ECMA182 校验值,为了避免数字精度问题,这里为字符串格式。
metaData:文件元数据信息。
isSyncRootFolder:当前文件夹是否为同步盘,如果是同步盘根目录返回 true,如果是同步盘子级节点,返回 false,如果不是同步盘,不返回该字段。
strategy:当该文件夹为同步盘时,返回同步方式,
local_to_cloud
,非必返。syncId:当该文件夹为同步盘时,返回同步任务 ID。
syncUserId:当该文件夹为同步盘时,返回设置同步任务的 userId。
authorityList:允许操作的权限(团队空间文件才返,个人空间及管理员拥有所有权限)。
canView:可查看,非必返。
canPreview:可预览,非必返。
canDownload:可下载,非必返。
canUpload:可上传,非必返。
canDelete:可删除,非必返。
canModify:可修改,非必返。
canAuthorize:可共享,非必返。
canShare:可分享,非必返。
previewByDoc:是否可通过 wps 预览。
previewByCI:是否可通过万象预览。
previewAsIcon:是否可用预览图作为 icon。
fileType:文件类型:excel、powerpoint 等。
authorityList:当前目录权限。
canView:可查看,非必返。
canPreview:可预览,非必返。
canPreviewSelf:自己可预览,非必返。
canDownload:可下载,非必返。
canDownloadSelf:自己可下载,非必返。
canUpload:可上传,非必返。
canDelete:可删除,非必返。
canModify:可修改,非必返。
canAuthorize:可共享,非必返。
canShare:可分享,非必返。