mirror of
https://git.fightbot.fun/hxuanyu/BingPaper.git
synced 2026-02-15 10:19:32 +08:00
优化存储逻辑:为 WebDAV、Local 和 S3 增加 Exists 方法;调整图片处理逻辑以避免重复存储变体;新增调试日志以便于排查问题
This commit is contained in:
@@ -72,3 +72,16 @@ func (w *WebDAVStorage) PublicURL(key string) (string, bool) {
|
||||
}
|
||||
return "", false
|
||||
}
|
||||
|
||||
func (w *WebDAVStorage) Exists(ctx context.Context, key string) (bool, error) {
|
||||
_, err := w.client.Stat(key)
|
||||
if err == nil {
|
||||
return true, nil
|
||||
}
|
||||
// gowebdav 的错误处理比较原始,通常 404 会返回错误
|
||||
// 这里假设报错就是不存在,或者可以根据错误消息判断
|
||||
if strings.Contains(err.Error(), "404") || strings.Contains(err.Error(), "not found") {
|
||||
return false, nil
|
||||
}
|
||||
return false, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user