ard-work/src/main/java/com/ruoyi/device/hiksdk/util/minio/MinioUtils.java
@@ -1,5 +1,6 @@ package com.ruoyi.device.hiksdk.util.minio; import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.device.hiksdk.config.MinioClientSingleton; import io.minio.*; import io.minio.http.Method; @@ -149,12 +150,16 @@ } boolean exsit = exitsBucket(bucketName); if (!exsit) { log.error(bucketName + "-桶不存在"); boolean bucket = createBucket(bucketName); if(bucket) { log.info(bucketName + "-桶不存在,成功创建桶"); } } //文件名 String originalFilename = file.getOriginalFilename(); //新的文件名 String fileName = UUID.randomUUID().toString().replace("-", "") + originalFilename; String fileName = IdUtils.fastSimpleUUID()+"_"+ originalFilename; try { InputStream inputStream = file.getInputStream(); /*上传对象*/ @@ -172,8 +177,11 @@ .builder() .bucket(bucketName) .object(fileName) .method(Method.GET) .build(); return MinioClientSingleton.getMinioClient().getPresignedObjectUrl(getPresignedObjectUrlArgs); String presignedObjectUrl = MinioClientSingleton.getMinioClient().getPresignedObjectUrl(getPresignedObjectUrlArgs); String ObjectUrl = presignedObjectUrl.substring(0, presignedObjectUrl.indexOf("?")); return ObjectUrl; } catch (Exception ex) { log.error("上传对象返回url异常:" + ex.getMessage()); } @@ -425,6 +433,7 @@ return false; } } /** *@描述 获取桶中所有对象 *@参数 [bucketName] ard-work/src/main/java/com/ruoyi/rongcloud/controller/RongCloudController.java
@@ -2,11 +2,16 @@ import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.device.hiksdk.config.MinioClientSingleton; import com.ruoyi.device.hiksdk.util.minio.MinioUtils; import com.ruoyi.rongcloud.service.RongCloudService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; @@ -20,15 +25,23 @@ @RestController @Api(tags = "融云接口") @Anonymous @RequestMapping("/rongCloud") public class RongCloudController { @Resource RongCloudService rongCloudService; @GetMapping("getToken") @GetMapping("/getToken") @ApiOperation("获取token") public AjaxResult getToken(String userId,String name) { String token = rongCloudService.getToken(userId, name); return AjaxResult.success(token); } @PostMapping("/uploadPic") @ApiOperation("上传图片") public AjaxResult uploadPic(MultipartFile file) { String url = MinioUtils.putObjectAndGetUrl("useravatar", file); return AjaxResult.success(url); } }