- 实现照片更新功能 (updatePhotoLogic.go) - 支持部分字段更新 (title, description, category_id) - 添加用户权限验证,只能更新自己的照片 - 添加分类存在性验证 - 完善错误处理和响应格式 - 实现照片删除功能 (deletePhotoLogic.go) - 添加用户权限验证,只能删除自己的照片 - 同时删除数据库记录和文件系统文件 - 安全的文件删除处理 - 更新Handler使用统一响应格式 - updatePhotoHandler.go: 使用response.Response统一处理 - deletePhotoHandler.go: 使用response.Response统一处理 - 添加完整API测试用例 (test_photo_crud.http) - 涵盖正常场景和错误场景测试 - 包含权限验证测试 - 更新项目进度 (TASK_PROGRESS.md) - 完成率从8%提升到12% - 更新API接口状态 - 记录技术成果和里程碑
94 lines
2.1 KiB
HTTP
94 lines
2.1 KiB
HTTP
### 照片CRUD测试
|
||
|
||
### 1. 用户登录获取token
|
||
POST http://localhost:8888/api/v1/auth/login
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"username": "admin",
|
||
"password": "123456"
|
||
}
|
||
|
||
### 设置变量
|
||
@token = {{login.response.body.data.token}}
|
||
|
||
### 2. 获取照片列表
|
||
GET http://localhost:8888/api/v1/photos?page=1&page_size=5
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 3. 上传照片 (可选,用于创建测试数据)
|
||
POST http://localhost:8888/api/v1/photos
|
||
Authorization: Bearer {{token}}
|
||
Content-Type: multipart/form-data; boundary=boundary
|
||
|
||
--boundary
|
||
Content-Disposition: form-data; name="title"
|
||
|
||
测试照片更新删除
|
||
--boundary
|
||
Content-Disposition: form-data; name="description"
|
||
|
||
这是一张用于测试更新和删除功能的照片
|
||
--boundary
|
||
Content-Disposition: form-data; name="category_id"
|
||
|
||
1
|
||
--boundary
|
||
Content-Disposition: form-data; name="file"; filename="test.jpg"
|
||
Content-Type: image/jpeg
|
||
|
||
< ./test.jpg
|
||
--boundary--
|
||
|
||
### 4. 获取单个照片详情
|
||
GET http://localhost:8888/api/v1/photos/1
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 5. 更新照片信息
|
||
PUT http://localhost:8888/api/v1/photos/1
|
||
Authorization: Bearer {{token}}
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"title": "更新后的照片标题",
|
||
"description": "更新后的照片描述信息",
|
||
"category_id": 1
|
||
}
|
||
|
||
### 6. 再次获取照片详情验证更新
|
||
GET http://localhost:8888/api/v1/photos/1
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 7. 删除照片
|
||
DELETE http://localhost:8888/api/v1/photos/1
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 8. 验证删除(应该返回404)
|
||
GET http://localhost:8888/api/v1/photos/1
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 错误场景测试
|
||
|
||
### 9. 尝试更新不存在的照片
|
||
PUT http://localhost:8888/api/v1/photos/999
|
||
Authorization: Bearer {{token}}
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"title": "不存在的照片"
|
||
}
|
||
|
||
### 10. 尝试删除不存在的照片
|
||
DELETE http://localhost:8888/api/v1/photos/999
|
||
Authorization: Bearer {{token}}
|
||
|
||
### 11. 无认证更新照片
|
||
PUT http://localhost:8888/api/v1/photos/1
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"title": "无认证更新"
|
||
}
|
||
|
||
### 12. 无认证删除照片
|
||
DELETE http://localhost:8888/api/v1/photos/1 |