Class OssEndpoint

java.lang.Object
cn.twelvet.oss.http.OssEndpoint

@Validated @RestController @RequestMapping("${oss.http.prefix:}/oss") public class OssEndpoint extends Object
oss 对外提供服务端点
Author:
twelvet
  • Constructor Details

    • OssEndpoint

      public OssEndpoint(OssTemplate ossTemplate)
      注入OssTemplate
      Parameters:
      ossTemplate - OssTemplate
  • Method Details

    • createBucket

      @PostMapping("/bucket/{bucketName}") public com.amazonaws.services.s3.model.Bucket createBucket(@PathVariable @NotBlank @NotBlank String bucketName)
      创建桶
      Parameters:
      bucketName - 桶名称
      Returns:
      Bucket
    • getBuckets

      @GetMapping("/bucket") public List<com.amazonaws.services.s3.model.Bucket> getBuckets()
      获取所有桶名称
      Returns:
      List Bucket
    • getBucket

      @GetMapping("/bucket/{bucketName}") public com.amazonaws.services.s3.model.Bucket getBucket(@PathVariable @NotBlank @NotBlank String bucketName)
      获取桶信息
      Parameters:
      bucketName - bucketName
      Returns:
      Bucket
    • deleteBucket

      @DeleteMapping("/bucket/{bucketName}") @ResponseStatus(ACCEPTED) public void deleteBucket(@PathVariable @NotBlank @NotBlank String bucketName)
      删除桶
      Parameters:
      bucketName - bucketName
    • createObject

      @PostMapping("/object/{bucketName}") public com.amazonaws.services.s3.model.S3ObjectSummary createObject(@RequestBody @NotNull @NotNull org.springframework.web.multipart.MultipartFile object, @PathVariable @NotBlank @NotBlank String bucketName) throws IOException
      上传对象
      Parameters:
      object - MultipartFile
      bucketName - bucketName
      Returns:
      S3ObjectSummary
      Throws:
      IOException - IOException
    • createObject

      @PostMapping("/object/{bucketName}/{objectName}") public com.amazonaws.services.s3.model.S3ObjectSummary createObject(@RequestBody @NotNull @NotNull org.springframework.web.multipart.MultipartFile object, @PathVariable @NotBlank @NotBlank String bucketName, @PathVariable @NotBlank @NotBlank String objectName) throws IOException
      上传对象
      Parameters:
      object - MultipartFile
      bucketName - bucketName
      objectName - objectName
      Returns:
      S3ObjectSummary
      Throws:
      IOException - IOException
    • filterObject

      @GetMapping("/object/{bucketName}/{objectName}") public List<com.amazonaws.services.s3.model.S3ObjectSummary> filterObject(@PathVariable @NotBlank @NotBlank String bucketName, @PathVariable @NotBlank @NotBlank String objectName)
      根据桶获取对象
      Parameters:
      bucketName - bucketName
      objectName - objectName
      Returns:
      List S3ObjectSummary
    • getObjectUrl

      @GetMapping("/object/{bucketName}/{objectName}/{expires}") public Map<String,Object> getObjectUrl(@PathVariable @NotBlank @NotBlank String bucketName, @PathVariable @NotBlank @NotBlank String objectName, @PathVariable @NotNull @NotNull Integer expires)
      获取文件外链,只用于下载
      Parameters:
      bucketName - bucketName
      objectName - objectName
      expires - Integer
      Returns:
      Map String, Object
    • getPutObjectUrl

      @GetMapping("/object/put/{bucketName}/{objectName}/{expires}") public Map<String,Object> getPutObjectUrl(@PathVariable @NotBlank @NotBlank String bucketName, @PathVariable @NotBlank @NotBlank String objectName, @PathVariable @NotNull @NotNull Integer expires)
      获取文件上传外链,只用于上传
      Parameters:
      bucketName - bucketName
      objectName - objectName
      expires - Integer
      Returns:
      Map String, Object
    • deleteObject

      @ResponseStatus(ACCEPTED) @DeleteMapping("/object/{bucketName}/{objectName}/") public void deleteObject(@PathVariable @NotBlank @NotBlank String bucketName, @PathVariable @NotBlank @NotBlank String objectName)
      删除对象
      Parameters:
      bucketName - bucketName
      objectName - objectName