JavaScript SDK:存储参考
每个管理存储桶和对象的方法都有其签名。
6分钟 读取·级别 参考·修改于 2026年10月12日
该英文文本是根据法文原文自动生成的,尚未经过审查。
该页面已自动翻译。英文版具有权威性。
#
班级
存储服务
| 方法 | 描述 |
|---|---|
from(bucketId: string): StorageBucketClient | 返回范围为特定存储桶的客户端(DX 奇偶校验 Supabase)。 |
listBuckets(): Promise<AuraResponse<StorageBucket[]>> | 列出项目桶。 |
getBucket(id: string): Promise<AuraResponse<StorageBucket>> | 通过标识符读取存储桶。 |
createBucket(name: string, options?: { public?: boolean; fileSizeLimit?: number; allowedMimeTypes?: string[]; }): Promise<AuraResponse<StorageBucket>> | 创建一个存储桶。 public (默认 false)使其对象无需身份验证即可读取; fileSizeLimit (以字节为单位)和 allowedMimeTypes 限制接受的文件。 |
updateBucket(id: string, options?: { public?: boolean; fileSizeLimit?: number; allowedMimeTypes?: string[]; }): Promise<AuraResponse<StorageBucket>> | 更新现有存储桶(部分更新:仅发送提供的字段)。 |
deleteBucket(id: string): Promise<AuraResponse<null>> | 通过其标识符删除存储桶。 |
upload(bucketId: string, path: string, file: Blob | File | ArrayBuffer, options?: { contentType?: string; upsert?: boolean; metadata?: Record<string, string>; }): Promise<AuraResponse<UploadResult>> | 将文件上传到存储桶。 |
download(bucketId: string, path: string, options?: { transform?: ImageTransform; }): BlobDownloadBuilder | 文件的延迟下载。 |
list(bucketId: string, options?: { prefix?: string; limit?: number; offset?: number; cursor?: string; }): Promise<AuraResponse<FileEntry[]>> | 列出存储桶中的文件。 |
remove(bucketId: string, paths: string[], options?: { permanent?: boolean; }): Promise<AuraResponse<null>> | 从存储桶中删除一个或多个文件。 |
copy(bucketId: string, fromPath: string, toPath: string): Promise<AuraResponse<{ key: string; }>> | 复制存储桶内的文件。 |
move(bucketId: string, fromPath: string, toPath: string): Promise<AuraResponse<{ key: string; }>> | 移动/重命名存储桶中的文件。 |
getMetadata(bucketId: string, path: string): Promise<AuraResponse<ObjectMeta>> | 获取文件元数据。 |
createSignedUrl(bucketId: string, path: string, expiresInSeconds?: number, options?: { transform?: ImageTransform; }): Promise<AuraResponse<{ url: string; expires_in: number; }>> | 生成签名的(临时)下载 URL。 |
createSignedUrls(bucketId: string, paths: string[], expiresInSeconds?: number, options?: { transform?: ImageTransform; }): Promise<AuraResponse<Array<{ path: string; url: string; expires_in: number; } | { path: string; error: AuraError; }>>> | 一次(批量)生成多个签名 URL。 |
createSignedUploadUrl(bucketId: string, path: string, expiresInSeconds?: number, options?: { upsert?: boolean; }): Promise<AuraResponse<{ url: string; expires_in: number; }>> | 生成签名的上传 URL(预签名的 PUT)。 |
getPublicUrl(bucketId: string, path: string, options?: { transform?: ImageTransform; }): string | 构造存储桶中文件的 URL。 |
#
班级
存储桶客户端
访问范围为特定存储桶的客户端(DX 奇偶校验 Supabase)。
| 财产 | 描述 |
|---|---|
readonly bucketId: string | 该客户端所链接的存储桶的标识符:其所有方法都作用于该存储桶。 |
| 方法 | 描述 |
|---|---|
upload(path: string, file: Blob | File | ArrayBuffer, options?: { contentType?: string; upsert?: boolean; metadata?: Record<string, string>; }): Promise<AuraResponse<UploadResult>> | 将文件上传到此存储桶。 |
download(path: string, options?: { transform?: ImageTransform; }): BlobDownloadBuilder | 从此存储桶下载文件。 |
list(options?: { prefix?: string; limit?: number; offset?: number; cursor?: string; }): Promise<AuraResponse<FileEntry[]>> | 列出该存储桶中的文件。 |
remove(paths: string[], options?: { permanent?: boolean; }): Promise<AuraResponse<null>> | 从此存储桶中删除一个或多个文件。 |
createSignedUrl(path: string, expiresInSeconds?: number, options?: { transform?: ImageTransform; }): Promise<AuraResponse<{ url: string; expires_in: number; }>> | 为此存储桶中的文件创建临时签名 URL。 |
createSignedUrls(paths: string[], expiresInSeconds?: number, options?: { transform?: ImageTransform; }): Promise<AuraResponse<Array<{ path: string; url: string; expires_in: number; } | { path: string; error: AuraError; }>>> | 一次性为此存储桶创建多个签名 URL。 |
createSignedUploadUrl(path: string, expiresInSeconds?: number, options?: { upsert?: boolean; }): Promise<AuraResponse<{ url: string; expires_in: number; }>> | 创建预签名的上传 URL(直接 PUT)。 |
getPublicUrl(path: string, options?: { transform?: ImageTransform; }): { data: { publicUrl: string; }; } | 返回此存储桶中文件的公共 URL。 |
#
班级
Blob下载生成器
延迟下载(默认为 Blob)。
| 方法 | 描述 |
|---|---|
asStream(): StreamDownloadBuilder | 切换到流式读取:结果变成加载到内存中的 ReadableStream 而不是 Blob。 |
then<TR1 = AuraResponse<Blob>, TR2 = never>(onfulfilled?: ((v: AuraResponse<Blob>) => TR1 | PromiseLike<TR1>) | null, onrejected?: ((e: unknown) => TR2 | PromiseLike<TR2>) | null): Promise<TR1 | TR2> | 触发下载(惰性:请求仅从 await开始);结果被记住。 |
#
班级
流下载生成器
变量通量 — res.body (ReadableStream)。
| 方法 | 描述 |
|---|---|
then<TR1 = AuraResponse<ReadableStream<Uint8Array>>, TR2 = never>(onfulfilled?: ((v: AuraResponse<ReadableStream<Uint8Array>>) => TR1 | PromiseLike<TR1>) | null, onrejected?: ((e: unknown) => TR2 | PromiseLike<TR2>) | null): Promise<TR1 | TR2> | 触发流式(惰性)下载;结果被记住。 |
生成的页面
该页面是根据 SDK 的类型声明和注释生成的,因此它不会偏离已发布的代码。有关工作示例,请阅读指南。
最后更新· 2026年10月12日