fix: 图片上传改用 POST + axios.put,与ManagerWorkspace一致

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-07-13 00:17:33 +08:00
parent c55ea18aaf
commit ff07e9c470
@@ -7,6 +7,7 @@ import { ElMessage, ElMessageBox } from 'element-plus'
import { getManagerColor as mgrColorFn, getMgrTextColor, loadManagerColors } from '@/utils/managerColor' import { getManagerColor as mgrColorFn, getMgrTextColor, loadManagerColors } from '@/utils/managerColor'
import { compressImage } from '@/utils/image' import { compressImage } from '@/utils/image'
import api from '@/api/index' import api from '@/api/index'
import axios from 'axios'
const auth = useAuthStore() const auth = useAuthStore()
const themeStore = useThemeStore() const themeStore = useThemeStore()
@@ -61,8 +62,8 @@ async function handleIndivPhotoUpload(event: Event) {
if (form.photos.length >= 9) break if (form.photos.length >= 9) break
try { try {
const compressed = await compressImage(file, { maxPixels: 1920, quality: 0.8 }) const compressed = await compressImage(file, { maxPixels: 1920, quality: 0.8 })
const presignRes = await api.get('/upload/presigned-url', { params: { filename: compressed.name, content_type: compressed.type || 'image/jpeg' } }) const presignRes = await api.post('/upload/presigned-url', null, { params: { filename: compressed.name, content_type: compressed.type || 'image/jpeg' } })
await api.put(presignRes.data.upload_url, compressed, { headers: { 'Content-Type': compressed.type || 'image/jpeg' } }) await axios.put(presignRes.data.upload_url, compressed, { headers: { 'Content-Type': compressed.type || 'image/jpeg' } })
form.photos.push(presignRes.data.object_key) form.photos.push(presignRes.data.object_key)
indivPhotoUrls.value[presignRes.data.object_key] = URL.createObjectURL(compressed) indivPhotoUrls.value[presignRes.data.object_key] = URL.createObjectURL(compressed)
} catch (_) { ElMessage.error('上传失败') } } catch (_) { ElMessage.error('上传失败') }