feat(personal): 优化个人中心头像上传功能
- 改进头像URL处理逻辑,智能识别相对路径和完整URL - 兼容不同存储服务的返回格式(本地存储、MinIO、OSS) - 本地存储返回相对路径时自动添加服务地址前缀 - MinIO和OSS返回完整URL时直接使用,无需额外处理 - 提升多存储服务环境下的用户体验
This commit is contained in:
parent
821b80d09a
commit
6836bc59b7
@ -433,9 +433,15 @@ async function handleAvatarChange(event: Event) {
|
||||
uploading.value = true
|
||||
const result = await uploadAvatar(file, 2)
|
||||
if (result.isSuccess) {
|
||||
// 使用配置文件中的服务地址构建头像访问URL
|
||||
// 智能处理头像访问URL
|
||||
let avatarUrl = result.data.fileUploadPath
|
||||
|
||||
// 如果返回的不是完整URL(如本地存储返回相对路径),则添加服务地址前缀
|
||||
if (!avatarUrl.startsWith('http://') && !avatarUrl.startsWith('https://')) {
|
||||
const baseUrl = serviceConfig[import.meta.env.MODE].url
|
||||
const avatarUrl = `${baseUrl}${result.data.fileUploadPath}`
|
||||
avatarUrl = `${baseUrl}${avatarUrl}`
|
||||
}
|
||||
// 如果返回的是完整URL(如MinIO、OSS),直接使用
|
||||
|
||||
basicForm.value.avatar = avatarUrl
|
||||
personalData.value.avatar = avatarUrl
|
||||
|
||||
Loading…
Reference in New Issue
Block a user