アリクラウドオブジェクトストレージOSSサービス——アップロード/削除/画像取得
15450 ワード
アリクラウドオブジェクトストレージOSSサービス——アップロード/削除/画像取得
1.準備オブジェクトストレージOSSサービス を開通する.アクセスキーの作成(アリクラウドOSS SDKを使用する場合に必要) Bucketを作成する(一意のBucket名を入力し、適切な領域を選択し、その他のオプションのデフォルト) Spring Bootプロジェクトの作成 PostmanテストバックエンドAPI、Postmanのダウンロードおよび使用リファレンスの使用を推奨https://blog.csdn.net/fxbin123/article/details/80428216 注意:Postmanを使用してアップロード画像機能をテストする場合、要求体(Body)のタイプをform-data とする必要がある.
2.画像のアップロード
3.画像の削除
4.画像の取得
5.画像取得機能のテスト
コンテンツをコピーしてSpring Bootプロジェクトのsrc/main/resources/staticディレクトリのファイルに貼り付けます
アリクラウドオブジェクトストレージOSS公式ドキュメント:https://help.aliyun.com/product/31815.html?spm=5176.8466032.0.0.7e8714505JnJY6
1.準備
2.画像のアップロード
//
@PostMapping(value = "/image")
public void uploadImage(MultipartFile file) {
// MultipartFile HTML form data
// EndPoint
String endPoint = "oss-cn-shanghai.aliyuncs.com";
// API
String accessKeyId = "" ;
String accessKeySecret = "" ;
String bucketName = "" ;
OSSClient client = new OSSClient(endPoint, accessKeyId, accessKeySecret);
client.putObject(bucketName, imageName, new ByteArrayInputStream(file.getBytes()));
client.shutdown();
}
3.画像の削除
//
@DeleteMapping(value = "/image/{imageName}")
public void deleteImage(@PathVariable String imageName) {
// EndPoint
String endPoint = "oss-cn-shanghai.aliyuncs.com";
// API
String accessKeyId = "" ;
String accessKeySecret = "" ;
String bucketName = "" ;
OSSClient client = new OSSClient(endPoint, accessKeyId, accessKeySecret);
client.deleteObject(bucketName, imageName);
client.shutdown();
}
4.画像の取得
//
@GetMapping(value = "/image/{imageName}")
public byte[] getImage(@PathVariable String imageName) {
// EndPoint
String endPoint = "oss-cn-shanghai.aliyuncs.com";
// API
String accessKeyId = "" ;
String accessKeySecret = "" ;
String bucketName = "" ;
OSSClient client = new OSSClient(endPoint, accessKeyId, accessKeySecret);
OSSObject image = client.getObject(bucketName, imageName);
InputStream content = image.getObjectContent();
if (content != null) {
try {
// buffer
int length = 1920 * 1260 * 3;
byte[] buf = new byte[length];
int size = 0;
int temp;
while ((temp = content.read()) != -1) {
buf[size] = (byte) temp;
size++;
}
content.close();
// ,
return Arrays.copyOf(buf, size);
} catch (IOException e) {
System.out.println("exception");
return null;
}
}
client.shutdown();
return null;
}
5.画像取得機能のテスト
コンテンツをコピーしてSpring Bootプロジェクトのsrc/main/resources/staticディレクトリのファイルに貼り付けます
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Get Imagetitle>
head>
<body style="margin: 0;">
<img src="http://localhost:80/image/" />
body>
html>
アリクラウドオブジェクトストレージOSS公式ドキュメント:https://help.aliyun.com/product/31815.html?spm=5176.8466032.0.0.7e8714505JnJY6