存储到data

This commit is contained in:
2024-12-31 06:57:53 +08:00
parent 310797a6e0
commit 7799298282
3 changed files with 31 additions and 22 deletions

View File

@@ -27,32 +27,17 @@ func (img *Image) Init(content string) error {
if len(regexp.MustCompile(`image.gameuiux.cn`).FindStringSubmatch(content)) > 0 {
key := regexp.MustCompile(`^https?://image.gameuiux.cn/`).ReplaceAllString(content, "")
filePath := filepath.Join("oss", key)
filePath := filepath.Join("data/oss", key)
// 先检查本地是否存在原图, 没有则从oss下载
// 先检查本地是否存在原图, 没有则从OSS下载
if _, err := os.Stat(filePath); err != nil {
ensureDirExists := func(filePath string) error {
dir := filepath.Dir(filePath) // 获取文件所在的目录
if _, err := os.Stat(dir); os.IsNotExist(err) {
// 如果目录不存在,创建多级目录
if err := os.MkdirAll(dir, 0755); err != nil {
return err
}
}
return nil
if err := os.MkdirAll(filepath.Dir(filePath), 0755); err != nil {
log.Fatalf("创建目录失败: %v\n", err)
}
// 确保目录存在
if err := ensureDirExists(filePath); err != nil {
log.Fatalf("Failed to create directory: %v\n", err)
}
bucket := GetBucket("gameui-image2")
fmt.Println("从 OSS 下载:", key, filePath)
err = bucket.GetObjectToFile(key, filePath)
if err != nil {
log.Println("Failed to download file: ", err)
if err := bucket.GetObjectToFile(key, filePath); err != nil {
log.Println("下载文件失败:", err)
return err
}
}