diff --git a/sec-beidou/src/main/java/com/imdroid/beidou/controller/OssFileController.java b/sec-beidou/src/main/java/com/imdroid/beidou/controller/OssFileController.java index 91ec4a11..1af77adb 100644 --- a/sec-beidou/src/main/java/com/imdroid/beidou/controller/OssFileController.java +++ b/sec-beidou/src/main/java/com/imdroid/beidou/controller/OssFileController.java @@ -50,11 +50,24 @@ public class OssFileController { public HttpResult upload(@RequestParam("file") MultipartFile multipartFile, String deviceId) throws Exception { System.out.println("upload device image:" + multipartFile.getOriginalFilename()); if (StringUtils.isEmpty(deviceId)) { - HttpResult.fail("设备编号不能为空"); + return HttpResult.fail("设备编号不能为空"); } String filename = deviceId + "_" + UUID.randomUUID().toString().replace("-", "") + ".jpg"; String url = aliyunOssUtils.uploadFile(multipartFile, filename, "device-img"); return HttpResult.success(url); } + + /** + * 删除oss上面的文件 + * + * @param url 图片访问链接 + * @return HttpResult + */ + @RequestMapping(value = "/delete") + public HttpResult delete(String url) { + System.out.println("delete file:" + url); + aliyunOssUtils.deleteFile(url); + return HttpResult.success(null); + } } diff --git a/sec-beidou/src/main/java/com/imdroid/beidou/utils/AliyunOssUtils.java b/sec-beidou/src/main/java/com/imdroid/beidou/utils/AliyunOssUtils.java index 3b0ed2b6..032af71a 100644 --- a/sec-beidou/src/main/java/com/imdroid/beidou/utils/AliyunOssUtils.java +++ b/sec-beidou/src/main/java/com/imdroid/beidou/utils/AliyunOssUtils.java @@ -79,4 +79,21 @@ public class AliyunOssUtils { return ossProperties.getPublicReadUrl() + "/" + directory + "/" + filename; } + /** + * 删除文件 + * + * @param url 图片访问链接 + */ + public void deleteFile(String url) { + try { + String prefixUrl = ossProperties.getPublicReadUrl() + "/"; + String key = url.replace(prefixUrl, ""); + OSS ossClient = new OSSClientBuilder().build(ossProperties.getEndpoint(), ossProperties.getAccessKey(), ossProperties.getAccessSecret()); + ossClient.deleteObject(ossProperties.getBucket(), key); + ossClient.shutdown(); + } catch (Exception e) { + throw new RuntimeException("删除文件失败,请检查配置信息:[" + e.getMessage() + "]"); + } + } + }