[英]Image upload/download using aws lambda
我正在嘗試創建一個 lambda 函數,它接受一個圖像作為多部分對象,然后進行一些處理並將其上傳到 s3 存儲桶,並向用戶提供一些響應。
我找到了一些如何進行的示例,但是我不明白我是否必須創建兩個 lambda 函數並上傳單獨的 jars 或者可以以不同的方式完成。
到目前為止,我有解析多部分並上傳到 s3 的服務,我的問題是如何使用 aws lambdas,謝謝你們
public String uploadFile(MultipartFile multipartFile) {
String fileUrl = "";
try {
File file = convertMultiPartToFile(multipartFile);
String fileName = generateFileName(multipartFile);
fileUrl = endpointUrl + "/" + bucketName + "/" + fileName;
uploadFileTos3bucket(fileName, file);
} catch (Exception e) {
throw new RuntimeException(e);
}
return fileUrl;
}
private File convertMultiPartToFile(MultipartFile file){
File convFile = new File(file.getOriginalFilename());
try {
FileOutputStream fos = new FileOutputStream(convFile);
fos.write(file.getBytes());
fos.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
return convFile;
}
private String generateFileName(MultipartFile multiPart) {
return new Date().getTime() + "-" + multiPart.getOriginalFilename().replace(" ", "_");
}
private void uploadFileTos3bucket(String fileName, File file) {
s3client.putObject(new PutObjectRequest(bucketName, fileName, file)
.withCannedAcl(CannedAccessControlList.PublicRead));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.