修复:
物料中的SOP/SIP上传图片后,点击保存后图片没有展示
| | |
| | | ) { |
| | | const formData = new FormData(); |
| | | formData.append('files', file); |
| | | const blobs = await requestClient.post('/system/storage-blob/upload', formData, { |
| | | // 使用公共上传接口,返回永久公开 previewURL |
| | | const blobs = await requestClient.post('/system/storage-blob/public-upload', formData, { |
| | | onUploadProgress, |
| | | headers: { 'Content-Type': 'multipart/form-data' }, |
| | | }); |
| | | const blob = Array.isArray(blobs) ? blobs[0] : blobs; |
| | | return blob ? { url: blob.url || blob.previewURL, name: blob.name, id: blob.id } : {}; |
| | | // 存储完整 previewURL(含 publicKey),确保可访问 |
| | | return blob ? { |
| | | url: blob.previewURL || blob.url, |
| | | name: blob.name || blob.originalFilename, |
| | | id: blob.id |
| | | } : {}; |
| | | } |
| | | |
| | | return { |
| | |
| | | function resolveImageUrl(url?: string): string { |
| | | if (!url) return ''; |
| | | try { |
| | | const { pathname } = new URL(url, window.location.origin); |
| | | return pathname; |
| | | const { pathname, search } = new URL(url, window.location.origin); |
| | | // 保留 pathname + 查询参数(publicKey),确保后端能验证 |
| | | return pathname + search; |
| | | } catch { |
| | | return url; |
| | | } |