Base64 文件上传
本页由 ModelFold 文档站根据上游官方 OpenAPI 文档同步生成。接口路径、参数、示例与官方保持一致;品牌与 API 域名已替换为 ModelFold。
接口
POST /api/file-base64-upload
完整 URL: https://ai.modelfold.online/api/file-base64-upload
鉴权:所有请求都需要
Authorization: Bearer <API_KEY>请求头。
INFO
上传文件在上传 24 小时后自动删除。
功能特点
- 支持 Base64 编码数据和 data URL 格式
- MIME 类型与扩展名取自 data URL 前缀(如 data:image/png;base64,...)或 fileName 的扩展名。
- 支持自定义文件名或自动生成(相同文件名会覆盖旧文件,可能存在缓存延迟)
- 返回完整的文件信息和下载链接
- API Key 认证保护
支持的格式
- 纯 Base64 字符串:
iVBORw0KGgoAAAANSUhEUgAA... - Data URL 格式:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...
使用建议
- 推荐用于小文件如图片
- 大文件(>10MB)建议使用文件流上传 API
- Base64 编码会使数据传输量增加约 33%
请求参数
请求体 (application/json)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
base64Data | string | 是 | Base64 编码的文件数据。支持纯 Base64 字符串或 data URL 格式 示例:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...。 |
uploadPath | string | 是 | 文件上传路径,不带首尾斜杠 示例:images/base64。 |
fileName | string | 否 | 文件名(可选),包含文件扩展名。如不提供文件名,将自动生成随机文件名。若新上传的文件名与已存在文件名相同,则旧文件将被覆盖,但由于缓存原因,此更改可能不会立即生效 示例:my-image.png。 |
请求示例
bash
curl -X POST "https://ai.modelfold.online/api/file-base64-upload" \
-H "Authorization: Bearer $MODELFOLD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"base64Data": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"uploadPath": "images/base64",
"fileName": "my-image.png"
}'json
{
"base64Data": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"uploadPath": "images/base64",
"fileName": "my-image.png"
}响应
200 — File uploaded successfully
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
success | boolean | 是 | Whether the request was successful |
code | integer | 是 | Response Status Code |
msg | string | 是 | Response message 示例:File uploaded successfully。 |
data | object | 是 | — |
data.fileName | string | 是 | File name 示例:uploaded-image.png。 |
data.filePath | string | 是 | Complete file path in storage 示例:images/user-uploads/uploaded-image.png。 |
data.downloadUrl | string | 是 | File download URL 示例:https://tempfile.redpandaai.co/xxx/images/user-uploads/uploaded-image.png。 |
data.fileSize | integer | 是 | File size in bytes 示例:154832。 |
data.mimeType | string | 是 | File MIME type 示例:image/png。 |
data.uploadedAt | string | 是 | Upload timestamp 示例:2025-01-01T12:00:00.000Z。 |
json
{
"success": true,
"code": 200,
"msg": "File uploaded successfully",
"data": {
"fileName": "uploaded-image.png",
"filePath": "images/user-uploads/uploaded-image.png",
"downloadUrl": "https://tempfile.redpandaai.co/xxx/images/user-uploads/uploaded-image.png",
"fileSize": 154832,
"mimeType": "image/png",
"uploadedAt": "2025-01-01T12:00:00.000Z"
}
}400 — 请求参数错误
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
success | boolean | 是 | 请求是否成功 |
code | integer | 是 | 响应状态码 |
msg | string | 是 | 响应消息 示例:File uploaded successfully。 |
json
{
"success": false,
"code": 400,
"msg": "Missing required parameter: uploadPath"
}401 — Unauthorized access
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
code | integer | 否 | 请求状态码。请求失败时 HTTP 状态仍为 200,请始终以本字段判断:200 表示成功,其他值均表示失败,原因见 msg。常见值:401 API key 无效或缺失;402 积分不足;429 超出频率限制;422 或 500 请求未能处理(请先查看 msg、检查参数,再决定是否重试)。 可选值:200 / 401 / 402 / 404 / 422 / 429 / 455 / 500 / 501 / 505。 示例:200。 |
msg | string | 否 | 响应消息,请求失败时返回错误描述 示例:success。 |
success | boolean | 是 | 是否成功 |
json
{
"success": false,
"code": 401,
"msg": "Authentication failed: Invalid API Key"
}500 — 服务器内部错误
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
success | boolean | 是 | 请求是否成功 |
code | integer | 是 | 响应状态码 |
msg | string | 是 | 响应消息 示例:File uploaded successfully。 |
json
{
"success": false,
"code": 500,
"msg": "Internal server error"
}