Uso de ListMultipartUploads con un SDK de AWS o la CLI
Los siguientes ejemplos de código muestran cómo utilizar ListMultipartUploads.
Los ejemplos de acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Puede ver esta acción en contexto en el siguiente ejemplo de código:
- CLI
-
- AWS CLI
-
El siguiente comando muestra todas las cargas multiparte activas de un bucket denominado amzn-s3-demo-bucket:
aws s3api list-multipart-uploads --bucket amzn-s3-demo-bucket
Salida:
{
"Uploads": [
{
"Initiator": {
"DisplayName": "username",
"ID": "arn:aws:iam::0123456789012:user/username"
},
"Initiated": "2015-06-02T18:01:30.000Z",
"UploadId": "dfRtDYU0WWCCcH43C3WFbkRONycyCpTJJvxu2i5GYkZljF.Yxwh6XG7WfS2vC4to6HiV6Yjlx.cph0gtNBtJ8P3URCSbB7rjxI5iEwVDmgaXZOGgkk5nVTW16HOQ5l0R",
"StorageClass": "STANDARD",
"Key": "multipart/01",
"Owner": {
"DisplayName": "aws-account-name",
"ID": "100719349fc3b6dcd7c820a124bf7aecd408092c3d7b51b38494939801fc248b"
}
}
],
"CommonPrefixes": []
}
Las cargas multiparte en curso conllevan costos de almacenamiento en Amazon S3. Complete o anule una carga multiparte activa para eliminar sus partes de su cuenta.
- Java
-
- SDK para Java 2.x
-
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.ListMultipartUploadsRequest;
import software.amazon.awssdk.services.s3.model.ListMultipartUploadsResponse;
import software.amazon.awssdk.services.s3.model.MultipartUpload;
import software.amazon.awssdk.services.s3.model.S3Exception;
import java.util.List;
/**
* Before running this Java V2 code example, set up your development
* environment, including your credentials.
*
* For more information, see the following documentation topic:
*
* https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html
*/
public class ListMultipartUploads {
public static void main(String[] args) {
final String usage = """
Usage:
<bucketName>\s
Where:
bucketName - The name of the Amazon S3 bucket where an in-progress multipart upload is occurring.
""";
if (args.length != 1) {
System.out.println(usage);
System.exit(1);
}
String bucketName = args[0];
Region region = Region.US_EAST_1;
S3Client s3 = S3Client.builder()
.region(region)
.build();
listUploads(s3, bucketName);
s3.close();
}
/**
* Lists the multipart uploads currently in progress in the specified Amazon S3 bucket.
*
* @param s3 the S3Client object used to interact with Amazon S3
* @param bucketName the name of the Amazon S3 bucket to list the multipart uploads for
*/
public static void listUploads(S3Client s3, String bucketName) {
try {
ListMultipartUploadsRequest listMultipartUploadsRequest = ListMultipartUploadsRequest.builder()
.bucket(bucketName)
.build();
ListMultipartUploadsResponse response = s3.listMultipartUploads(listMultipartUploadsRequest);
List<MultipartUpload> uploads = response.uploads();
for (MultipartUpload upload : uploads) {
System.out.println("Upload in progress: Key = \"" + upload.key() + "\", id = " + upload.uploadId());
}
} catch (S3Exception e) {
System.err.println(e.getMessage());
System.exit(1);
}
}
}
Para obtener una lista completa de las guías para desarrolladores de AWS SDK y ejemplos de código, consulte Desarrollo con Amazon S3 mediante los SDK de AWS. En este tema también se incluye información sobre cómo empezar a utilizar el SDK y detalles sobre sus versiones anteriores.