提供阿里oss和短信功能
推薦使用最新版本
安裝
<dependency>
<groupId>cn.gjing</groupId>
<artifactId>tools-ali</artifactId>
<version>1.0.1</version>
</dependency>
使用方法
阿里OSS:
-
文件簡單上傳(最大文件不能超過5G)上傳成功後返回圖片地址,失敗會返回錯誤信息,後續根據返回結果自行處理;
@PostMapping("/upload") @ApiOperation(value = "上傳圖片", httpMethod = "POST") public ResponseEntity testUpload(@RequestParam(name = "file") MultipartFile file) { String fileOssUrl = AliOss.of("endPoint", "accessKeyId","accessKeySecret", "bucketName") .upload(file); return ResponseEntity.ok(fileOssUrl); }
-
刪除文件: 刪除成功返回刪除的文件名列表,支持刪除多個文件,當前演示只刪除指定文件, fileOssUrl爲上傳oss成功後返回的路徑
@DeleteMapping("/file") @ApiOperation(value = "刪除文件", httpMethod = "DELETE") public ResponseEntity deleteImg(@RequestParam("url") String url) { List<String> deleteObjectList = AliOss.of("endPoint", "accessKeyId","accessKeySecret", "bucketName") .delete(Collections.singletonList(url)); return ResponseEntity.ok(deleteObjectList); }
-
下載文件: fileOssUrl爲上傳oss成功後返回的url,localFilePath爲你要保存的本地目錄(不存在會創建),返回true爲成功;
@PostMapping("/img-native") @ApiOperation(value = "下載文件到本地", httpMethod = "POST") public ResponseEntity downImgToNative(String fileOssUrl, String path) { boolean down = AliOss.of("endPoint", "accessKeyId","accessKeySecret", "bucketName") .downloadFile(fileOssUrl, path); if (down) { return ResponseEntity.ok("下載成功"); } return ResponseEntity.badRequest().body("下載失敗"); }
-
流式下載文件:
@GetMapping("/img-stream") @ApiOperation(value = "流式下載", httpMethod = "GET") public ResponseEntity streamDown(String fileOssUrl, HttpServletResponse response) { boolean down = AliOss.of("endPoint", "accessKeyId","accessKeySecret", "bucketName") .downloadStream(fileOssUrl, response); if (down) { return ResponseEntity.ok("下載成功"); } return ResponseEntity.badRequest().body("下載失敗"); }
阿里短信:
-
發送短信: 返回內容中Code爲ok表示發送成功 ,更多狀態碼請前往狀態碼
@PostMapping("/send-ali") @ApiOperation(value = "阿里短信", httpMethod = "POST") public ResponseEntity sendAli() { //參數,必須與對應的短信模板參數對應,如果沒有參數,可以傳null或者空map Map<String, String> param = new HashMap<>(16); map.put("code", "123123"); //接收的短信的手機號,支持多個,英文逗號隔開 String send = AliSms.of("accessKeyId", "accessKeySecret") .send("157********", "短信模板Code", param, "短信簽名"); return ResponseEntity.ok(send); }
-
查詢短信, 日期必須爲yyyyMMdd格式(20181207),僅支持最近30天;返回內容中Code爲OK代表請求成功,每頁顯示的短信數量取值範圍爲1-50,指定發送記錄要查看的頁碼(最小爲1),
更多狀態碼前往: 狀態碼@GetMapping("query-ali") @ApiOperation(value = "查詢阿里短信發送記錄", httpMethod = "GET") public ResponseEntity queryAli() { String result = AliSms.of("您的accessKeyId", "您的accessKey祕鑰") .querySendDetails("157********", "查詢日期(年月日)", "每頁數量", "當前頁數"); return ResponseEntity.ok(result); }