Logo
RavenSaaS Docs

文件存储

存储概述

RavenSaaS 支持上传文件到 AWS S3 兼容的文件存储系统,例如 AWS S3 / Cloudflare R2 / 腾讯云 COS 等。

S3 兼容

支持 AWS S3 兼容的存储系统,包括 Cloudflare R2、腾讯云 COS 等。

多种上传方式

支持 AI 图片、本地文件、远程文件等多种上传方式。

简单易用

提供简洁的 API 接口,轻松集成到你的应用中。

配置云存储

选择你的云存储平台,创建存储桶,设置访问密钥和访问域名。然后把相关参数填写到项目的配置文件中:

环境变量配置

.env.production
1STORAGE_ENDPOINT=""
2STORAGE_REGION=""
3STORAGE_ACCESS_KEY=""
4STORAGE_SECRET_KEY=""
5STORAGE_BUCKET=""
6STORAGE_DOMAIN=""

文件上传

上传 AI 图片到云存储

把 aisdk 生成的图片(返回的 base64 数据),上传到云存储。

app/api/demo/gen-image/route.ts
1import { uploadFile } from "@/lib/storage";
2
3const filename = `image_${new Date().getTime()}.png`;
4const key =`ravensaas/${filename}`;
5const body = Buffer.from(image.base64, "base64");
6
7try {
8  const url = await uploadFile(body, key, "image/png", "inline");
9
10  console.log("upload file success:", url);
11} catch (err) {
12  console.log("upload file failed:", err);
13}
注意:uploadFile 接收的 body 参数是 Buffer 类型。你可以传递从 URL 下载的文件 Buffer 或者从本地文件读取的 Buffer。

参考

AWS S3 兼容端点

AWS S3 兼容端点官方文档

查看文档

Last updated on 2025年1月5日