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

相关推荐
薪火铺子9 小时前
微服务认证方案对比与选型
微服务·云原生·架构
运维全栈笔记10 小时前
K8S部署Redis高可用全攻略:1主2从3哨兵架构实战
redis·docker·云原生·容器·架构·kubernetes·bootstrap
AI攻城狮11 小时前
AI Agent 从上线到删库跑路始末
云原生
键盘鼓手苏苏18 小时前
Kubernetes 容器安全最佳实践
云原生·kubernetes·k8
Elastic 中国社区官方博客18 小时前
Elasticsearch Serverless 中跨项目搜索(CPS)的工作原理
大数据·elasticsearch·搜索引擎·云原生·serverless
键盘鼓手苏苏18 小时前
Kubernetes 安全最佳实践
云原生·kubernetes·k8
小妖同学学AI19 小时前
云原生AI服务新范式:Jina Serve框架,让多模态大模型落地像搭积木一样简单
人工智能·云原生·jina
独隅20 小时前
it+云原生:GitOps实践指南-K8s配置版本管理
git·elasticsearch·云原生
AI攻城狮21 小时前
马斯克为何一定要干掉 OpenAI?这不只是恩怨,而是一场 AI 时代的产权之战
云原生
wapicn991 天前
微服务架构下的数据核验设计,API接入最佳实践
微服务·云原生·架构