关于 bkend-storage
bkend-storage 是 bkend.ai 文件存储指南,面向需要在应用中上传、管理或下载文件的开发者。它介绍预签名 URL、文件可见性等级、REST API 和大文件分片上传流程。
主要功能
- 01单文件与多文件上传流程
- 02大文件分片上传
- 03四种文件可见性等级
- 04文件管理 REST API
- 05通过文档搜索获取示例
适用场景
- 01上传常规文件
- 02处理大文件分片上传
- 03按访问权限提供文件
- 04查询文件操作代码示例
MCP 相关
指南说明 bkend MCP 没有专用存储工具;MCP 客户端可搜索存储文档,再据此生成 REST API 文件操作代码。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ww-w-ai/ bkit-claude-code --skill bkend-storage安装后在 Claude Code 中输入/bkend-storage确认已加载。
详细介绍
bkend.ai 存储指南
上传方式
| 方法 | 使用场景 | 流程 |
|---|---|---|
| 单文件 | 普通文件 | 预签名 URL -> PUT 上传 -> 注册元数据 |
| 多文件 | 多个文件 | 重复单文件上传流程 |
| 分片 | 大文件 | 初始化 -> 分片 URL -> 完成 |
预签名 URL
- 有效期:15 分钟
- 使用 PUT 方法上传文件二进制数据
- 必须提供 Content-Type 标头
文件可见性(4 个级别)
| 级别 | 访问权限 | URL 类型 |
|---|---|---|
| public | 任何人 | CDN URL(永不过期) |
| private | 仅所有者 | 预签名 URL(1 小时) |
| protected | 已认证用户 | 预签名 URL(1 小时) |
| shared | 指定目标 | 预签名 URL(1 小时) |
大小限制
| 类别 | 最大大小 |
|---|---|
| 图片 | 10 MB |
| 视频 | 100 MB |
| 文档 | 20 MB |
存储类别
图片、文档、媒体、附件
MCP 存储工作流
bkend MCP 没有专用的存储工具。请使用以下工作流:
- 搜索文档:使用
search_docs,查询 "file upload presigned url" - 获取示例:使用
search_docs,查询 "file upload code examples" - 生成代码:AI 生成用于文件操作的 REST API 代码
可搜索的存储文档
| 文档 ID | 内容 |
|---|---|
7_code_examples_data | CRUD + 文件上传代码示例 |
REST 存储 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 |
分片上传(大文件)
| 方法 | 端点 | 说明 |
|---|---|---|
| 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. PUT {url} with file binary + Content-Type header
3. POST /v1/files with { fileId, filename, contentType, size, visibility }
分片上传流程(大文件)
1. POST /v1/files/multipart/init -> { uploadId }
2. POST /v1/files/multipart/presigned-url -> [{ partNumber, url }]
3. PUT each part URL with file chunk
4. POST /v1/files/multipart/complete -> { file }
官方文档(实时参考)
如需查看最新存储文档,请使用 WebFetch:
评论
支持 Markdown