diff --git a/src/main/java/run/halo/app/handler/file/QiniuOssFileHandler.java b/src/main/java/run/halo/app/handler/file/QiniuOssFileHandler.java index 6e890b9c5d..32f4656641 100644 --- a/src/main/java/run/halo/app/handler/file/QiniuOssFileHandler.java +++ b/src/main/java/run/halo/app/handler/file/QiniuOssFileHandler.java @@ -190,7 +190,9 @@ public void delete(String key) { } } catch (QiniuException e) { log.error("Qiniu oss error response: [{}]", e.response); - throw new FileOperationException("附件 " + key + " 从七牛云删除失败", e); + if (e.response.statusCode != 612) { + throw new FileOperationException("附件 " + key + " 从七牛云删除失败", e); + } } } diff --git a/src/main/java/run/halo/app/handler/file/UpOssFileHandler.java b/src/main/java/run/halo/app/handler/file/UpOssFileHandler.java index 322b446e99..f07453de65 100644 --- a/src/main/java/run/halo/app/handler/file/UpOssFileHandler.java +++ b/src/main/java/run/halo/app/handler/file/UpOssFileHandler.java @@ -21,6 +21,7 @@ import run.halo.app.repository.AttachmentRepository; import run.halo.app.service.OptionService; import run.halo.app.utils.ImageUtils; +import run.halo.app.utils.JsonUtils; /** * Up oss file handler. @@ -137,7 +138,9 @@ public void delete(String key) { try { Response result = manager.deleteFile(key, null); - if (!result.isSuccessful()) { + HashMap respondBody = JsonUtils.jsonToObject(result.body().string(), HashMap.class); + if (!result.isSuccessful() + && !(result.code() == 404 && respondBody.get("code").equals(40400001))) { log.warn("附件 " + key + " 从又拍云删除失败"); throw new FileOperationException("附件 " + key + " 从又拍云删除失败"); }