Pour envoyer des fichiers Amazon s3 Vous devez utiliser la méthode putObject
de classe AmazonS3Client comme ceci:
AWSCredentials credentials = new BasicAWSCredentials(appId,appSecret);
AmazonS3 s3Client = new AmazonS3Client(credentials);
String bucketPath = "YOUR_BUCKET_NAME/FOLDER_INSIDE_BUCKET";
InputStream is = new FileInputStream("YOUR_PDF_FILE_PATH");
ObjectMetadata meta = new ObjectMetadata();
meta.setContentLength(is.available());
s3Client.putObject(new PutObjectRequest(bucketPath,"YOUR_FILE.pdf", is, meta).withCannedAcl(CannedAccessControlList.Private));
Et pour obtenir le fichier de S3, vous devez générer une URL pré-signé pour accéder au fichier privé de S3 ou si vos fichiers sont publics, vous pouvez accéder directement à votre fichier en cliquant sur le lien du fichier dans votre navigateur. Le lien pour votre fichier sera disponible dans la console AWS S3.
Nous avons aussi indiqué CannedAccessControlList.Private
dans le code de téléchargement ci-dessus qui signifie que nous faisons l'autorisation de fichier en tant que privé Nous avons donc besoin de générer URL presigned pour accéder au fichier comme ceci:
AWSCredentials credentials = new BasicAWSCredentials(appId,appSecret);
AmazonS3 s3Client = new AmazonS3Client(credentials);
GeneratePresignedUrlRequest generatePresignedUrlRequest = new GeneratePresignedUrlRequest("YOUR_BUCKET_NAME", "FOLDER_INSIDE_BUCKET/YOUR_FILE.pdf");
generatePresignedUrlRequest.setMethod(HttpMethod.GET);
Date expiration = Date();
long milliSeconds = expiration.getTime();
milliSeconds += 1000 * 60 * 60; // Add 1 hour.
expiration.setTime(milliSeconds);
generatePresignedUrlRequest.setExpiration(expiration);
URL url = s3client.generatePresignedUrl(generatePresignedUrlRequest);
String finalUrl = url.toString();
juste en utilisant Java, vous pouvez le faire déplacez votre fichier dans S3 –
Google? :) https://javatutorial.net/java-s3-example ou http://docs.aws.amazon.com/AmazonS3/latest/dev/UploadObjSingleOpJava.html –