Esta página es solo para los clientes actuales del servicio S3 Glacier que utilizan Vaults y la API de REST original de 2012.
Si busca soluciones de almacenamiento de archivos, se recomienda que utilice las clases de almacenamiento de S3 Glacier en Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive. Para obtener más información sobre estas opciones de almacenamiento, consulte Clases de almacenamiento de S3 Glacier
Finalización de una carga multiparte (POST uploadID)
Descripción
Puede llamar a esta operación de carga multiparte para informar a Amazon S3 Glacier (S3 Glacier) de que se han cargado todas las partes de archivo y de que S3 Glacier ahora puede montar el archivo a partir de las partes cargadas.
Para obtener información sobre la carga multiparte, consulte Carga de archivos grandes por partes (carga multiparte).
Después de montar y guardar el archivo en el almacén, S3 Glacier devuelve el ID de archivo del recurso de archivo creado recientemente. Tras cargar un archivo, debe guardar el ID de archivo devuelto para recuperar el archivo en otro momento.
En la solicitud, debe incluir el algoritmo hash en árbol SHA256 calculado de todo el archivo que ha cargado. Para obtener información acerca de cómo calcular un hash en árbol SHA256, consulte Cálculo de sumas de comprobación. En el servidor, S3 Glacier también construye el algoritmo hash en árbol SHA256 del archivo montado. Si los valores coinciden, S3 Glacier guarda el archivo en el almacén; de lo contrario, devuelve un error y se produce un error en la operación. La operación Enumeración de partes (GET uploadID) devuelve la lista de las partes cargadas para una carga multiparte específica. Incluye la información de suma de comprobación de cada carga parte que se puede usar para depurar un problema de suma de comprobación.
Además, S3 Glacier también comprueba si faltan rangos de contenido. Al cargar las partes, especifique los valores de rango que identifican dónde encaja cada parte en el montaje final del archivo. Al montar el archivo final, S3 Glacier busca si faltan rangos de contenido y, en caso de que falten, devuelve un error, por lo que no se realiza la operación de completar la carga multiparte.
La operación de completar carga multiparte es idempotente. Después de completar correctamente por primera vez la carga multiparte, si vuelve a llamar a la operación en un breve periodo, esta se realizará correctamente y devolverá el mismo ID de archivo. Esto resulta útil si tiene un problema de red o recibe un error de servidor 500, en cuyo caso puede repetir la solicitud de completar carga multiparte y obtener el mismo ID de archivo sin crear archivos duplicados. Sin embargo, tenga en cuenta que, después de que se complete la carga multiparte, no puede llamar a la operación de enumeración de partes y la carga multiparte no aparecerá en la respuesta de enumerar cargas multiparte aunque sea posible la realización idempotente.
Solicitudes
Para completar una carga multiparte, envíe una solicitud HTTP POST al URI del ID de la carga que S3 Glacier ha creado en respuesta a la solicitud de inicio de carga multiparte. Es el mismo URI que ha usado al cargar las partes. Además de los encabezados obligatorios comunes, debe incluir el resultado del hash en árbol SHA256 de todo el archivo y el tamaño total del archivo en bytes.
Sintaxis
POST /
AccountId
/vaults/VaultName
/multipart-uploads/uploadID
Host: glacier.Region
.amazonaws.com Date:date
Authorization:SignatureValue
x-amz-sha256-tree-hash:SHA256 tree hash of the archive
x-amz-archive-size:ArchiveSize in bytes
x-amz-glacier-version: 2012-06-01
nota
El valor AccountId
es el ID de la Cuenta de AWS propietaria del almacén. Puede especificar un ID de Cuenta de AWS o, si lo desea, un solo carácter “-
” (guion), en cuyo caso, Amazon S3 Glacier usa el ID de la Cuenta de AWS asociada con las credenciales empleadas para firmar la solicitud. Si usa un ID de cuenta, no incluya ningún guion (“-”) en el ID.
Parámetros de la solicitud
Esta operación no usa parámetros de solicitud.
Encabezados de solicitud
Esta operación utiliza los siguientes encabezados de solicitud, además de los encabezados de solicitud comunes a todas las operaciones. Para obtener más información acerca de los encabezados de solicitudes comunes, consulte Encabezados de solicitudes comunes.
Nombre | Descripción | Obligatorio |
---|---|---|
x-amz-archive-size
|
El tamaño total, en bytes, de todo el archivo. Este valor debe ser la suma de todos los tamaños de las partes individuales que ha cargado. Tipo: cadena Valor predeterminado: None Restricciones: ninguna |
Sí |
x-amz-sha256-tree-hash
|
El hash en árbol SHA256 de todo el archivo. Es el hash en árbol SHA256 de las partes individuales. Si el valor que especifique en la solicitud no coincide con el hash en árbol SHA256 del archivo montado final tal como lo ha calculado S3 Glacier, este último devuelve un error y no se puede realizar la solicitud. Tipo: cadena Valor predeterminado: None Restricciones: ninguna |
Sí |
Elementos de la solicitud
Esta operación no usa los elementos de la solicitud.
Respuestas
Amazon S3 Glacier (S3 Glacier) crea un hash en árbol SHA256 de todo el archivo. Si el valor coincide con el hash en árbol SHA256 de todo el archivo que ha especificado en la solicitud, S3 Glacier agrega el archivo al almacén. En respuesta, devuelve el encabezado HTTP Location
con la ruta URL del recurso de archivo agregado recientemente. Si el tamaño de archivo o SHA256 que ha enviado en la solicitud no coincide, S3 Glacier devolverá un error y la carga permanece en estado incompleto. Es posible reintentar la operación de finalización de carga multiparte posteriormente con los valores correctos, en cuyo momento puede crear correctamente un archivo. Si no se completa una carga multiparte, S3 Glacier reclamará finalmente el ID de carga.
Sintaxis
HTTP/1.1 201 Created x-amzn-RequestId: x-amzn-RequestId Date: Date Location: Location x-amz-archive-id: ArchiveId
Encabezados de respuesta
Una respuesta correcta incluye los siguientes encabezados de respuesta, además de los encabezados de respuesta comunes a todas las operaciones. Para obtener más información acerca de los encabezados de respuesta comunes, consulte Encabezados de respuesta comunes.
Nombre | Descripción |
---|---|
Location
|
La ruta del URI relativo del archivo creado recientemente. Esta URL incluye el ID de archivo que S3 Glacier ha generado. Tipo: cadena |
x-amz-archive-id
|
El ID del archivo. Este valor también forma parte del encabezado Tipo: cadena |
Campos de respuesta
Esta operación no devuelve ningún cuerpo de respuesta.
Ejemplo
Solicitud de ejemplo
En este ejemplo, se envía una solicitud HTTP POST al URI que devolvió una solicitud de inicio de carga multiparte. La solicitud especifica el hash en árbol SHA256 de todo el archivo y el tamaño total del archivo.
POST /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com z-amz-Date: 20170210T120000Z x-amz-sha256-tree-hash:1ffc0f54dd5fdd66b62da70d25edacd0 x-amz-archive-size:8388608 x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2
Respuesta de ejemplo
En el siguiente ejemplo de respuesta se muestra que S3 Glacier ha creado correctamente un archivo a partir de las partes que ha cargado. La respuesta incluye el ID de archivo con la ruta completa.
HTTP/1.1 201 Created x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId x-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId
Ahora puede enviar solicitudes HTTP al URI del recurso/archivo creado recientemente. Por ejemplo, puede enviar una solicitud GET para recuperar el archivo.
Secciones relacionadas