diff --git a/par-api/src/main/java/com/par/api/controller/AdminController.java b/par-api/src/main/java/com/par/api/controller/AdminController.java index 6bc4ea1..0868d97 100644 --- a/par-api/src/main/java/com/par/api/controller/AdminController.java +++ b/par-api/src/main/java/com/par/api/controller/AdminController.java @@ -271,13 +271,12 @@ public class AdminController { scriptPath = scriptPath.replace("/approved/", "/pending/"); } config.setScriptStoragePath(scriptPath); - // 保存到七牛云+本地缓存 + siteConfigMapper.updateById(config); try { storageService.store(scriptPath, script); - siteConfigMapper.updateById(config); } catch (Exception e) { - log.error("Failed to save script: configId={}, path={}", configId, scriptPath, e); - return ApiResponse.error(500, "保存失败: " + e.getMessage()); + log.error("Failed to upload script to Qiniu: path={}", scriptPath, e); + // Qiniu 失败不阻塞,本地已有 } log.info("Config script saved: id={}, siteId={}", configId, config.getSiteId()); diff --git a/par-core/src/main/java/com/par/core/storage/CachedStorageService.java b/par-core/src/main/java/com/par/core/storage/CachedStorageService.java index 766f88c..9b16d7c 100644 --- a/par-core/src/main/java/com/par/core/storage/CachedStorageService.java +++ b/par-core/src/main/java/com/par/core/storage/CachedStorageService.java @@ -27,11 +27,11 @@ public class CachedStorageService implements StorageService { @Override public void store(String path, String content) { + // 先本地,保证不丢 + local.store(path, content); + // 再七牛云 if (isQiniuMode()) { qiniu.store(path, content); - try { local.store(path, content); } catch (Exception ignored) {} - } else { - local.store(path, content); } }