SDK 使用
PG 模式云存储推荐使用 app.storage.from(bucketId) 进入指定 Bucket 的对象操作客户端。路径参数均为 Bucket 内对象名,不需要传 cloud:// fileID。
import cloudbase from '@cloudbase/js-sdk';
const app = cloudbase.init({ env: '<env-id>' });
const bucket = app.storage.from('avatars');
选择合适的任务指南
| 你的目标 | 阅读建议 |
|---|---|
| 创建、更新、删除 Bucket | Bucket 管理 |
上传文件、处理 contentType、upsert 和元数据 | 上传文件 |
| 下载文件、生成签名链接、公开访问 | 访问与下载文件 |
| 列出、复制、移动、删除文件 | 管理文件 |
| 查询命名、大小、MIME、覆盖和路径设计建议 | 限制与最佳实践 |
| CDN 缓存、Public / Private 缓存差异 | CDN 加速与缓存 |
| 直接查 API 签名和类型定义 | JS SDK Storage API |
核心入口
const bucket = app.storage.from('avatars');
avatars 对应 storage.buckets.id。后续所有对象路径都相对于该 Bucket:
await bucket.upload('user-123/avatar.png', file);
await bucket.download('user-123/avatar.png');
await bucket.remove(['user-123/avatar.png']);
常用 API 速查
Bucket 管理
| API | 说明 | 文档 |
|---|---|---|
app.storage.createBucket() | 创建 Bucket | Bucket 管理 |
app.storage.updateBucket() | 更新 Bucket 配置 | Bucket 管理 |
app.storage.deleteBucket() | 删除 Bucket | Bucket 管理 |
文件上传
const { data, error } = await bucket.upload('user-123/avatar.png', file, {
contentType: 'image/png',
upsert: true,
metadata: {
usage: 'avatar',
},
});
if (error) {
throw error;
}
详细说明见 上传文件。