文件上传
上传通用附件文件(图片、文档等),返回可公开访问的文件 URL。
| 项目 | 内容 |
|---|---|
| Method | POST |
| URL | https://devapi.fengshengshou.com/api/upload/attachment |
| 鉴权 | 是,Bearer Token |
| Content-Type | multipart/form-data |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file | file | 是 | 上传的文件,最大 20 MB |
curl -X POST "https://devapi.fengshengshou.com/api/upload/attachment" \ -H "Authorization: Bearer your_token_here" \ -F "file=@/path/to/file"| 字段 | 类型 | 说明 |
|---|---|---|
| code | int | 状态码,0 表示成功 |
| message | string | 提示信息 |
| data.url | string | 文件公开访问 URL |
| data.path | string | 文件存储相对路径 |
| data.name | string | 原始文件名 |
| data.mime_type | string | 文件 MIME 类型 |
| data.size | int | 文件大小(字节) |
{ "code": 0, "message": "success", "data": { "url": "https://devapi.fengshengshou.com/storage/attachments/2026/07/05/abc123.pdf", "path": "attachments/2026/07/05/abc123.pdf", "name": "document.pdf", "mime_type": "application/pdf", "size": 204800 }}{ "code": 422, "message": "文件缺失或超过 20 MB 大小限制", "data": null}上传语音文件,用于语音消息等场景,返回可访问的语音文件 URL。
| 项目 | 内容 |
|---|---|
| Method | POST |
| URL | https://devapi.fengshengshou.com/api/upload/voice |
| 鉴权 | 是,Bearer Token |
| Content-Type | multipart/form-data |
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| voice | file | 是 | 上传的语音文件,最大 10 MB |
curl -X POST "https://devapi.fengshengshou.com/api/upload/voice" \ -H "Authorization: Bearer your_token_here" \ -F "voice=@/path/to/voice.mp3"| 字段 | 类型 | 说明 |
|---|---|---|
| code | int | 状态码,0 表示成功 |
| message | string | 提示信息 |
| data.url | string | 文件公开访问 URL |
| data.path | string | 文件存储相对路径 |
| data.name | string | 原始文件名 |
| data.mime_type | string | 文件 MIME 类型 |
| data.size | int | 文件大小(字节) |
{ "code": 0, "message": "success", "data": { "url": "https://devapi.fengshengshou.com/storage/voices/2026/07/05/xyz789.mp3", "path": "voices/2026/07/05/xyz789.mp3", "name": "voice.mp3", "mime_type": "audio/mpeg", "size": 51200 }}{ "code": 422, "message": "文件缺失或超过 10 MB 大小限制", "data": null}