对象目录
接口文档
身份认证
所有管理接口(以 /oss-api 开头)均需身份验证。请在请求头中包含有效的访问令牌:
同时需要在 Query 中携带 bucket(必填)用于区分项目空间,例如:?bucket=my-project。
Header
Authorization: Bearer <Your-Token>文件管理 API
GET
/oss-api/buckets
列出工作空间响应示例
JSON
{
"buckets": ["proj-a", "proj-b"]
}POST
/oss-api/buckets
新建工作空间请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间名称(仅允许字母、数字及 . _ -) |
响应示例
JSON
{
"ok": true,
"bucket": "my-project"
}DELETE
/oss-api/buckets
删除工作空间会删除整个工作空间目录及其所有内容。
请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
成功响应
JSON
{ "ok": true }PATCH
/oss-api/buckets
重命名工作空间请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 原工作空间 |
| newBucket | string | (必填) 新工作空间名称(仅允许字母、数字及 . _ -) |
成功响应
JSON
{ "ok": true, "bucket": "my-project-2" }GET
/oss-api/files/tree
获取目录树请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
| path | string | (可选) 相对路径,默认为根目录 |
| page | number | (可选) 页码,默认 1 |
| pageSize | number | (可选) 每页数量,默认 20 |
响应示例
JSON
{
"directories": [{ "name": "docs", "hasChildren": true }],
"files": [{ "name": "logo.png", "size": 1024, "url": "/oss-file/b/proj-a/logo.png" }],
"path": "",
"totalFiles": 1,
"totalDirectories": 1
}POST
/oss-api/mkdir
新建文件夹请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
| path | string | (可选) 父目录相对路径,默认根目录 |
| name | string | (必填) 新文件夹名称(仅允许字母、数字及 . _ -) |
响应示例
JSON
{
"ok": true,
"path": "new-folder"
}POST
/oss-api/upload
上传文件请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
| dir | string | (可选) 指定上传目录(相对路径,如 images 或 foo/bar)。不传则按年/月/日目录落盘 |
| imgCompress | boolean | (可选) 是否压缩图片:true/false;默认使用服务端配置 |
| imgFormat | string | (可选) 目标格式:webp/jpeg/png/avif;默认使用服务端配置 |
请求内容 (Multipart)
| 字段 | 类型 | 描述 |
|---|---|---|
| file | File | (必填) 要上传的文件对象 |
响应示例
JSON
{
"ok": true,
"name": "2026/05/07/uuid.webp",
"url": "/oss-file/b/my-project/2026/05/07/uuid.webp",
"compressed": true,
"format": "webp"
}GET
/oss-api/download/*
下载文件URL 中的 * 代表文件的相对路径。
请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
PATCH
/oss-api/files/*
重命名URL 中的 * 代表文件的相对路径。
请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
请求体 (JSON)
JSON
{ "newName": "new-name.png" }DELETE
/oss-api/files/*
删除文件/目录URL 中的 * 代表要删除的路径。
请求参数 (Query)
| 名称 | 类型 | 描述 |
|---|---|---|
| bucket | string | (必填) 工作空间 |
成功响应
JSON
{ "ok": true }匿名直链
GET
/oss-file/b/<bucket>/*
匿名访问通过直链地址直接读取文件内容,受 Referer 防盗链保护。
不带 /b/<bucket> 的路径为历史兼容(默认空间)。当前管理接口要求 bucket 必填。
系统设置
/data
100 MB
8787
/oss-api
/oss-file
图片压缩配置
true
webp
80%
关于 LX OSS
LX OSS 是一个轻量级的对象存储服务,提供简单易用的文件管理界面。
功能特性
- 文件上传与下载
- 目录树形浏览
- 文件预览
- 访问令牌管理
- RESTful API
技术栈
- Node.js + Fastify
- 纯前端 JavaScript
- CSS3 响应式设计