fix(avatar): WebP 解码未生效 — image.Decode 不支持 WebP,改用 webp.Decode
This commit is contained in:
@ -67,8 +67,14 @@ func (s *AvatarService) ProcessAvatar(userID uint, file io.Reader, contentType s
|
|||||||
return "", fmt.Errorf("文件大小不能超过 5MB")
|
return "", fmt.Errorf("文件大小不能超过 5MB")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3. 解码图片
|
// 3. 解码图片(WebP 需显式调用 webp.Decode,Go 标准库不含 WebP 解码器)
|
||||||
img, _, err := image.Decode(bytes.NewReader(data))
|
var img image.Image
|
||||||
|
switch contentType {
|
||||||
|
case "image/webp":
|
||||||
|
img, err = webp.Decode(bytes.NewReader(data))
|
||||||
|
default:
|
||||||
|
img, _, err = image.Decode(bytes.NewReader(data))
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("图片解码失败:%v", err)
|
return "", fmt.Errorf("图片解码失败:%v", err)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user