概览
存储API提供基于桶的文件存储,类似于S3。上传、下载和管理文件,支持本地和S3兼容存储后端。标头
对于经过身份验证的函数调用:使用上传策略上传对象
InsForge支持两种类型的存储后端:- 本地存储:文件存储在本地文件系统上。用于开发或低容量生产。
- S3兼容:文件存储在S3兼容对象存储上。用于高容量生产。
- 获取上传策略
- 上传文件
- 确认上传(仅限S3)
第1步:获取上传策略
根据存储后端获取最优上传策略(直接或预签名URL)。 上传策略API根据存储后端返回最优上传方法:- 本地存储:直接上传到InsForge API
- S3兼容:预签名URL用于直接上传到S3
请求正文
上传到已有对象键会就地替换当前对象。
示例
响应(S3后端)
响应(本地存储)
第2步:上传文件
使用提供的方法将文件上传到指定的URL。- 本地存储:使用PUT请求到
uploadUrl,使用multipart/form-data和file字段。 - S3兼容:使用POST请求到
uploadUrl,使用multipart/form-data和file字段。包括请求中fields对象的所有字段。
第3步:确认预签名上传(仅限S3)
确认文件已成功使用预签名 URL 上传到 S3。请求正文
示例
响应
上传对象(已弃用)
使用特定密钥将文件上传到桶。路径参数
请求正文
multipart/form-data带有file字段。
示例
响应
使用自动生成的密钥上传(已弃用)
使用自动生成的唯一密钥上传文件。示例
响应
使用下载策略下载对象
InsForge支持两种类型的存储后端:- 本地存储:文件存储在本地文件系统上。用于开发或低容量生产。
- S3兼容:文件存储在S3兼容对象存储上。用于高容量生产。
- 获取下载策略
- 从返回的URL下载文件
第1步:获取下载策略
根据存储后端和桶可见性获取最优下载策略(直接URL或预签名URL)。 下载策略API根据存储后端和桶可见性返回最优下载方法:- 本地存储:从InsForge API直接下载
- S3兼容:S3的预签名URL。
过期时间(用于预签名URL)从桶的
可见性自动计算服务器端。端点不需要请求正文。
objectKey可能包含
/(伪文件夹)——不要百分比编码分隔符。POST /api/storage/buckets/{bucketName}/objects/{objectKey}/download-strategy
在原始路径上保留为已弃用的别名,以支持较旧的SDK
版本,将在未来的主要版本中删除。迁移到GET。示例
响应(S3公开桶)
响应(S3私人桶)
第2步:下载文件
使用适当的方法从返回的URL下载文件。下载对象(已弃用)
从桶下载文件。示例
响应
二进制文件内容,具有适当的Content-Type和Content-Length标头。