liusuyi
2026-01-29 04c8dbe6d9d4887bb9b9b4969e4f879e584ad717
ard-admin/src/main/java/com/ard/web/controller/sample/media/MinioProxyUploadController.java
@@ -3,22 +3,21 @@
import com.ard.common.config.OssConfiguration;
import com.ard.oss.model.CredentialsDTO;
import com.ard.oss.service.impl.OssServiceContext;
import com.ard.sample.common.model.ResponseResult;
import com.ard.sample.media.model.FileUploadDTO;
import com.ard.sample.utils.S3PutObjectResponse;
import io.minio.MinioClient;
import io.minio.PutObjectArgs;
import io.minio.credentials.StaticProvider;
import io.minio.errors.MinioException;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.io.ByteArrayInputStream;
import java.security.InvalidKeyException;
@@ -30,6 +29,7 @@
 * 适配 MinIO SDK 8.3.7 + 服务器 RELEASE.2024-08-03
 * 承接大疆 PUT 上传请求,中转上传到 MinIO HTTPS 接口
 */
@Api(tags = "机场上传minio")
@Slf4j
@RestController
@RequestMapping("/minioTransfer") // 根路径,匹配 Nginx 转发的 /dock/、/kmz/ 路径
@@ -53,6 +53,7 @@
     * @param contentType 文件 MIME 类型(默认二进制流,适配多种文件格式)
     * @return S3 规范 XML 响应(返回给大疆,衔接后续流程)
     */
    @ApiOperation("minio上传")
    @PutMapping("/{bucketName}/{objectName}")
    public ResponseEntity<S3PutObjectResponse> proxyUpload(
            @PathVariable String bucketName,
@@ -124,4 +125,10 @@
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(null);
        }
    }
    @ApiOperation("测试")
    @PostMapping("/test")
    public ResponseResult fastUpload() {
        return ResponseResult.success();
    }
}