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目录详情:

相关推荐
阿里云云原生12 小时前
AI 语音一直“正在连接”?用 RUM 排查 WebSocket 建连问题
云原生
阿里云云原生20 小时前
从页面渲染到智能体:ARMS Node.js 探针解锁 SSR + AI 全链路可观测
云原生
Nontee1 天前
K3s vs K8s:差的不是功能,是交付方式
云原生·容器·kubernetes
做运维的阿瑞1 天前
Docker常见故障全方位排查指南
运维·docker·云原生·容器
谢亮_vipxieliang1 天前
云原生存储进阶:CSI 演进与 AI 工作负载的存储架构设计
人工智能·云原生
朱包林1 天前
iTerm2终端配置指南
linux·javascript·python·云原生·容器·kubernetes·云计算
长安米粒贵1 天前
K8s 探针配置错了,服务为什么会反复重启?聊聊 4 个常见误区
云原生
小陈运维1 天前
使用kubeadm初始化IPV4/IPV6集群
linux·docker·云原生·容器·kubernetes
笑洋仟1 天前
k8s的Ingress配置问题
云原生·容器·kubernetes