SuperMap 云套件文件管理接口说明

SuperMap 云套件文件管理接口说明

云套件文件管理工具使用的是 angular-filemanager,其 API 文档位于 file-manager 容器的"/var/www/htm/API.md"。

1、接口说明

目录下文件列表 (Method: POST)

Request content

json 复制代码
{
    "action": "list",
    "path": "/public_html"
}

Response

json 复制代码
{ "result": [ 
    {
        "name": "magento",
        "rights": "drwxr-xr-x",
        "size": "4096",
        "date": "2024-03-03 15:31:40",
        "type": "dir"
    }, 
    ...
]}

重命名文件/文件夹 (Method: POST)

Request content

json 复制代码
{
    "action": "rename",
    "item": "/public_html/index.php",
    "newItemPath": "/public_html/index2.php"
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

移动文件/文件夹 (Method: POST)

Request content

json 复制代码
{
    "action": "move",
    "items": ["/public_html/libs", "/public_html/config.php"],
    "newPath": "/public_html/includes"
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

拷贝文件/文件夹 (Method: POST)

Request content

json 复制代码
{
    "action": "copy",
    "items": ["/public_html/index.php", "/public_html/config.php"],
    "newPath": "/includes",
    "singleFilename": "renamed.php" <-- (only present in single selection copy)
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

删除文件/文件夹 (Method: POST)

Request content

json 复制代码
{
    "action": "remove",
    "items": ["/public_html/index.php"],
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

编辑文件 (Method: POST)

Request content

json 复制代码
{
    "action": "edit",
    "item": "/public_html/index.php",
    "content": "<?php echo random(); ?>"
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

获取文件内容 (Method: POST)

Request content

json 复制代码
{
    "action": "getContent",
    "item": "/public_html/index.php"
}

Response

json 复制代码
{ "result": "<?php echo random(); ?>" }

创建文件夹 (Method: POST)

Request content

json 复制代码
{
    "action": "createFolder",
    "newPath": "/public_html/new-folder"
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

设置权限 (Method: POST)

Request content

json 复制代码
{
    "action": "changePermissions",
    "items": ["/public_html/root", "/public_html/index.php"],
    "perms": "rw-r-x-wx",
    "permsCode": "653",
    "recursive": true
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

压缩文件 (Method: POST)

Request content

json 复制代码
{
    "action": "compress",
    "items": ["/public_html/photos", "/public_html/docs"],
    "destination": "/public_html/backups",
    "compressedFilename": "random-files.zip"
}}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

解压文件 (Method: POST)

Request content

json 复制代码
{
    "action": "extract",
    "destination": "/public_html/extracted-files",
    "item": "/public_html/compressed.zip",
    "folderName": "extract_dir"
}

Response

json 复制代码
{ "result": { "success": true, "error": null } }

上传文件 (Method: POST, Content-Type: multipart/form-data)

Http post request payload

复制代码
Content-Disposition: form-data; name="file-0"; filename="github.txt"

Response

json 复制代码
{ "result": { "success": true, "error": null } }

注意:上传文件无数量限制,文件将依次编号为file-0、file-1、...、file-n。

下载/预览文件 (Method: GET)

Http query params

复制代码
[fileManagerConfig.downloadFileUrl]?action=download&path=/public_html/image.jpg

Response

复制代码
-File content

下载(多个)文件 (Method: GET)

Request content

json 复制代码
{
    "action": "downloadMultiple",
    "items": ["/public_html/image1.jpg", "/public_html/image2.jpg"],
    "toFilename": "multiple-items.zip"
}}

Response

复制代码
-File content

2、调用云套件文件管理上传接口测试示例

因为云套件的文件管理需要有 token 才能访问,获取云套件 access_token 可参考帮助文档。具体使用参考如下图:

使用文件上传作为案例测试,将本地文件上传到2025目录下。

调用上传文件接口前2025目录详情:

Postman 测试:

调用上传文件接口后2025目录详情:

相关推荐
SelectDB1 小时前
Doris 异步物化视图实战:与 Snowflake MV / Dynamic Tables 分层建模对照
大数据·数据库·云原生
阿里云云原生2 小时前
从长程 Agent 到 Super-agent,解锁更多场景
云原生
水无痕simon7 小时前
4、Eureka服务端安装
云原生·eureka
时间售卖铺7 小时前
Docker镜像构建全解析:从原理到实战优化
运维·docker·云原生·容器
wzq11_6668 小时前
Kubernetes集群——工作负载
云原生·容器·kubernetes
时间售卖铺1 天前
Docker实战:一键部署轻量级容器
运维·docker·云原生
艾伦_耶格宇1 天前
【kubernetes - 1.28版本】-10 K8S命名空间
云原生·容器·kubernetes
草莓熊Lotso1 天前
【C++ 基于微服务的即时通讯系统】网关基建:cpp-httplib 与 WebSocketpp 从入门到实战
linux·开发语言·数据库·c++·redis·微服务·云原生
时间售卖铺2 天前
触发器与函数实战:MySQL高效编程秘诀
运维·数据库·mysql·云原生
云-缩影2 天前
拆解函数计算 Serverless GPU 部署 AI 模型:Flux 生图和语音复刻怎么跑的
人工智能·云原生·serverless