From 1bdd6405e8caffc058066bdd26cb6de1ea9cf7ea Mon Sep 17 00:00:00 2001 From: songhuangfeng123 <shf18767906695@163.com> Date: 星期二, 09 八月 2022 18:35:39 +0800 Subject: [PATCH] 8-9fix --- safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/minioFile/service/MinioAccessService.java | 97 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 97 insertions(+), 0 deletions(-) diff --git a/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/minioFile/service/MinioAccessService.java b/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/minioFile/service/MinioAccessService.java new file mode 100644 index 0000000..2bc51f6 --- /dev/null +++ b/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/minioFile/service/MinioAccessService.java @@ -0,0 +1,97 @@ +package com.gkhy.safePlatform.minioFile.service; + +import com.gkhy.safePlatform.minioFile.config.MinioConfig; +import com.gkhy.safePlatform.minioFile.utils.UUIDUtil; +import io.minio.GetPresignedObjectUrlArgs; +import io.minio.MinioClient; +import io.minio.errors.*; +import io.minio.http.Method; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.io.IOException; +import java.security.InvalidKeyException; +import java.security.NoSuchAlgorithmException; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +@Service +public class MinioAccessService { + + @Resource + private MinioConfig minioConfig; + + @Autowired + private MinioClient minioClient; + + public String viewFile(String objectName){ + String url = null; + try { + url = minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder() + .method(Method.GET) + .bucket(minioConfig.getBucketName()) + .object(objectName) + .expiry(60).build()); + } catch (ErrorResponseException e) { + e.printStackTrace(); + } catch (InsufficientDataException e) { + e.printStackTrace(); + } catch (InternalException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (InvalidResponseException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (XmlParserException e) { + e.printStackTrace(); + } catch (ServerException e) { + e.printStackTrace(); + } + return url; + } + + public String getPresignUrl(String prefixName ,String suffixName){ + String uuid= UUIDUtil.initUUID(); + String objName = prefixName+uuid+suffixName; + String url = null; + try { + Map<String, String> reqParams = new HashMap<>(); + reqParams.put("response-content-type", "application/json"); + url = minioClient.getPresignedObjectUrl(GetPresignedObjectUrlArgs.builder() + .method(Method.PUT) + .bucket(minioConfig.getBucketName()) + .object(objName) + .expiry(60*2) + .extraQueryParams(reqParams) + .build()); + } catch (ErrorResponseException e) { + e.printStackTrace(); + } catch (InsufficientDataException e) { + e.printStackTrace(); + } catch (InternalException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (InvalidResponseException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (XmlParserException e) { + e.printStackTrace(); + } catch (ServerException e) { + e.printStackTrace(); + } + return url; + } + + + +} -- Gitblit v1.9.2