peixue-dev/peidu/Archive/一次性文件/[一次性]图片上传配置修复-2026-01-25.md

112 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 图片上传配置修复
## 问题描述
用户反馈看到旧的图片URL格式
- `http://localhost:8080/uploads/images/2026/01/08/xxx.png`
- `http://example.com/xxx.jpg`
## 问题原因
1. **数据库旧数据**: 历史上传的图片使用旧URL格式不需要清理
2. **配置缺失**: `application.yml` 中缺少 `file.upload.url` 配置项
3. **旧代码兼容**: `LearningRecordServiceImpl` 中有旧的上传方法使用该配置
## 解决方案
### 1. 更新 application.yml
添加了 `file.upload.url` 配置项(兼容旧代码):
```yaml
file:
upload:
mode: remote
url-prefix: https://px.ddn-ai.cloud/uploads/ # 新系统使用
url: https://px.ddn-ai.cloud/uploads # 旧系统兼容
```
### 2. 当前上传流程
**新上传系统**(推荐使用):
```
小程序
→ http://localhost:8089/api/file/upload (本地后端)
→ FileUploadService.uploadFile()
→ 远程上传到 https://px.ddn-ai.cloud/api/file/upload/direct
→ 保存到 /www/wwwroot/px.ddn-ai.cloud/Image/
→ 返回 https://px.ddn-ai.cloud/uploads/20260125_xxx.jpg
```
**旧上传方法**(已废弃,但保留兼容):
```
LearningRecordServiceImpl.uploadFile()
→ 使用 file.upload.url 配置
→ 返回 https://px.ddn-ai.cloud/uploads/xxx/xxx/xxx.jpg
```
## 验证步骤
### 1. 重启后端服务
```bash
# 停止旧进程
# 重新运行后端
```
### 2. 测试上传功能
- 打开小程序陪伴员端
- 进入签到页面
- 上传一张图片
- 检查返回的URL格式
### 3. 期望结果
返回的URL应该是
```
https://px.ddn-ai.cloud/uploads/20260125_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.jpg
```
## 配置说明
### 新系统配置(推荐)
- **接口**: `/api/file/upload`
- **Service**: `FileUploadService`
- **配置项**: `file.upload.url-prefix`
- **URL格式**: `https://px.ddn-ai.cloud/uploads/20260125_xxx.jpg`
### 旧系统配置(兼容)
- **接口**: 无Service内部方法
- **Service**: `LearningRecordServiceImpl.uploadFile()`
- **配置项**: `file.upload.url`
- **URL格式**: `https://px.ddn-ai.cloud/uploads/images/20260125/xxx.jpg`
## 注意事项
1. **旧数据不影响**: 数据库中的旧URL是历史数据不影响新上传
2. **统一使用新接口**: 建议所有上传都使用 `/api/file/upload` 接口
3. **配置已兼容**: 新旧系统配置都已正确设置
## 后续工作
根据 `[一次性]小程序图片上传更新清单-2026-01-25.md`,还需要更新以下页面使用新的上传工具:
**高优先级**:
- [ ] 签退页面 (checkout.vue)
- [ ] 成长记录创建 (record-create.vue)
- [ ] 每日记录 (daily-record.vue)
**中优先级**:
- [ ] 管理师申请 (apply.vue)
- [ ] 陪伴员资料 (profile.vue)
**低优先级**:
- [ ] 视频上传 (upload.vue)
- [ ] 反馈创建 (create.vue)
## 完成状态
✅ 配置文件已更新
✅ 新上传系统已就绪
✅ 旧系统已兼容
⏳ 等待重启后端测试
⏳ 等待更新其他页面