增加oss文件删除接口

This commit is contained in:
LiGang 2023-10-28 15:52:24 +08:00
parent 6e82c17f72
commit 079a119ccf
2 changed files with 31 additions and 1 deletions

View File

@ -50,11 +50,24 @@ public class OssFileController {
public HttpResult upload(@RequestParam("file") MultipartFile multipartFile, String deviceId) throws Exception { public HttpResult upload(@RequestParam("file") MultipartFile multipartFile, String deviceId) throws Exception {
System.out.println("upload device image:" + multipartFile.getOriginalFilename()); System.out.println("upload device image:" + multipartFile.getOriginalFilename());
if (StringUtils.isEmpty(deviceId)) { if (StringUtils.isEmpty(deviceId)) {
HttpResult.fail("设备编号不能为空"); return HttpResult.fail("设备编号不能为空");
} }
String filename = deviceId + "_" + UUID.randomUUID().toString().replace("-", "") + ".jpg"; String filename = deviceId + "_" + UUID.randomUUID().toString().replace("-", "") + ".jpg";
String url = aliyunOssUtils.uploadFile(multipartFile, filename, "device-img"); String url = aliyunOssUtils.uploadFile(multipartFile, filename, "device-img");
return HttpResult.success(url); 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);
}
} }

View File

@ -79,4 +79,21 @@ public class AliyunOssUtils {
return ossProperties.getPublicReadUrl() + "/" + directory + "/" + filename; 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() + "]");
}
}
} }