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

相关推荐
阿里云云原生1 天前
研发视角的新突破:当 AI Coding 工具集成全域运维诊断,排查线上故障只需 3 分钟
云原生
小猿姐2 天前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
阿里云云原生2 天前
AgentTeams 和 Claude Tag 都进入群聊模式,是新范式还是新叙事?
云原生·agent
阿里云云原生3 天前
Higress v2.2.3 发布:正式入驻 CNCF Sandbox,AI Gateway 与 Ingress 迁移能力双向加固
云原生
阿里云云原生4 天前
香港站【企业 AI Agent 工程化实战专场】来啦,邀您7月9日见!
云原生·agent
阿里云云原生4 天前
研发域与运维域的“数字握手”:通过 Agentic Skills 实现 DevOps 全链路自动化
云原生
阿里云云原生8 天前
AI 开发新常态:当 Cursor、Claude、Codex 并行,如何统一管理散落的 Skill 资产?
云原生·ai编程
探索云原生8 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
Java之美8 天前
从edge-trigger到level-trigger,谈谈 Kubernetes controller 的开发范式
云原生
阿里云云原生9 天前
深度解构:当 Append-only 的 SLS 遇上 Update/Delete,是如何实现设计权衡的?
云原生