bkend-storage 是 bkend.ai 的文件存储指南,用于说明该平台文件上传、下载、可见性与存储桶相关的使用方式。
用途 该技能面向需要在 bkend.ai 上管理文件存储的场景,涵盖文件上传、下载、可见性级别设置与存储桶分类等操作。
主要能力 上传方式分为三类。单文件上传适用于普通文件,流程为:预签名 URL -> PUT 上传 -> 注册元数据。多文件上传即重复执行单文件上传流程。分片上传适用于大文件,流程为:初始化 -> 获取分片 URL -> 完成。
预签名 URL 有效期为 15 分钟,使用 PUT 方法并携带文件二进制数据,必须提供 Content-Type 头。
文件可见性分为四个级别:public,任何人可访问,使用无过期的 CDN URL;private,仅所有者可访问,使用 1 小时有效的预签名 URL;protected,已认证用户可访问,使用 1 小时有效的预签名 URL;shared,指定目标可访问,使用 1 小时有效的预签名 URL。
大小限制按类别区分:图片最大 10 MB,视频最大 100 MB,文档最大 20 MB。存储分类包括 images、documents、media、attachments。
REST Storage API 提供以下端点:POST /v1/files/presigned-url 生成预签名 URL;POST /v1/files 注册元数据(完成上传);GET /v1/files 获取文件列表;GET /v1/files/:fileId 获取文件详情;PATCH /v1/files/:fileId 更新元数据;DELETE /v1/files/:fileId 删除文件;POST /v1/files/:fileId/download-url 生成下载 URL。
分片上传 API 提供:POST /v1/files/multipart/init 初始化分片上传;POST /v1/files/multipart/presigned-url 获取分片上传 URL;POST /v1/files/multipart/complete 完成分片上传;POST /v1/files/multipart/abort 中止分片上传。
使用方式 单文件上传流程为:1. POST /v1/files/presigned-url,返回 { url, fileId };2. 向 {url} 发送 PUT 请求,携带文件二进制与 Content-Type 头;3. POST /v1/files,提交 { fileId, filename, contentType, size, visibility }。
分片上传流程为:1. POST /v1/files/multipart/init,返回 { uploadId };2. POST /v1/files/multipart/presigned-url,返回 [{ partNumber, url }];3. 向每个分片 URL 发送 PUT 请求上传文件分块;4. POST /v1/files/multipart/complete,返回 { file }。
MCP 存储工作流:bkend MCP 没有专门的存储工具,需按以下流程操作:先用 search_docs 以“file upload presigned url”为查询检索文档;再以“file upload code examples”为查询获取示例;最后由 AI 生成用于文件操作的 REST API 代码。可检索的存储文档 Doc ID 为 7_code_examples_data,内容为 CRUD 与文件上传代码示例。
官方文档(实时参考) 如需最新的存储文档,可使用 WebFetch 访问:存储概览 https://raw.githubusercontent.com/ww-w-ai/bkend-docs/main/en/storage/01-overview.md ;MCP 存储指南 https://raw.githubusercontent.com/ww-w-ai/bkend-docs/main/en/mcp/07-storage-tools.md ;完整目录 https://raw.githubusercontent.com/ww-w-ai/bkend-docs/main/SUMMARY.md 。
适用场景 适用于在 bkend.ai 中实现文件上传、下载、元数据注册与管理,以及按可见性级别控制文件访问、按类别组织存储桶的场景。
限制 预签名 URL 有效期为 15 分钟,下载类预签名 URL 有效期为 1 小时。文件大小受类别限制:图片 10 MB、视频 100 MB、文档 20 MB。MCP 不提供专用存储工具,需依赖文档检索与 AI 生成 REST API 代码。其他未在资料中说明的收费、价格与平台细节暂未提供。