From fe512841e70c9dae6097251aa65708fe18314ae2 Mon Sep 17 00:00:00 2001 From: zqy <2522236926@qq.com> Date: 星期二, 15 四月 2025 19:41:57 +0800 Subject: [PATCH] 对象存储地址修改为bendudu的&一个接口--将原本存在本地的文件图片上传到存储桶中 --- zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java | 41 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 40 insertions(+), 1 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java b/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java index f23b112..9aef8e9 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/GetOrPut.java @@ -19,6 +19,8 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; +import java.net.URL; +import java.net.URLConnection; import java.util.UUID; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -70,6 +72,7 @@ String fileExt = originalFilename.substring(originalFilename.lastIndexOf(".")); String key = java.util.UUID.randomUUID().toString() + fileExt; + ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentLength(file.getSize()); metadata.setContentType(file.getContentType()); @@ -100,7 +103,43 @@ PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); cosClient.putObject(putObjectRequest); - return baseUrl + "/" + key; + return key; + } + + /** + * 涓婁紶鏈湴鏂囦欢 + * @param fileUrl 鏈湴鏂囦欢璺緞 + * @return 鏂囦欢璁块棶URL + */ + public String uploadWebFile(String fileUrl) throws IOException { + // 鍋囪 fileUrl 鏄綘瑕佷笂浼犵殑鏂囦欢 URL + System.out.println(fileUrl); + URL url = new URL(fileUrl); + InputStream inputStream = url.openStream(); + + URLConnection connection = url.openConnection(); + + // 鑾峰彇鏂囦欢鐨勫ぇ灏忥紙瀛楄妭鏁帮級 + int contentLength = connection.getContentLength(); + // 鑾峰彇鏂囦欢绫诲瀷 + String type = connection.getContentType(); +// 鑾峰彇鏂囦欢鐨勬墿灞曞悕锛堝鏋滈渶瑕侊級 + String fileExtension = fileUrl.substring(fileUrl.lastIndexOf(".")); + String key = UUID.randomUUID().toString() + fileExtension; + + ObjectMetadata metadata = new ObjectMetadata(); + metadata.setContentLength(contentLength); + metadata.setContentType(type); +// 鍒涘缓 PutObjectRequest 璇锋眰瀵硅薄锛岀洿鎺ヤ紶鍏� InputStream + PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, inputStream, metadata); + +// 涓婁紶鏂囦欢 + cosClient.putObject(putObjectRequest); + +// 鍏抽棴杈撳叆娴� + inputStream.close(); + + return key; } /** -- Gitblit v1.9.1