UploadPart
Documentación: UploadPart
Descripción
La operación UploadPart
sube una parte de un objeto utilizando un cargamento de varias partes. Debes iniciar un cargamento de varias partes antes de poder subir partes. Cada parte, excepto la última, debe tener al menos 5 MB de tamaño.
Solicitud
Método: PUT
URI:
Estilo virtual-host:
https://{bucket-name}.s3.latam-scl-x.datageneral.cl/{object-key}?partNumber={part-number}&uploadId={upload-id}
Estilo path:
https://s3.latam-scl-x.datageneral.cl/{bucket-name}/{object-key}?partNumber={part-number}&uploadId={upload-id}
Parámetros de la URI:
partNumber
: Requerido. El número de la parte que se está subiendo. Este número debe estar entre 1 y 10000, inclusive.uploadId
: Requerido. El ID del cargamento de varias partes, obtenido de la respuesta a la operaciónCreateMultipartUpload
.
Encabezados:
Host
: Requerido. Especifica el nombre del bucket (para virtual-host) o el host del servicio (para path-style).Date
: Requerido. Fecha y hora de la solicitud.Content-Length
: Requerido. La longitud del cuerpo de la solicitud (los datos de la parte).Content-MD5
: Opcional. El hash MD5 de los datos de la parte.Authorization
: Requerido. Contiene la firma de la solicitud para la autenticación.Otros encabezados opcionales: Dependiendo de las funcionalidades que se quieran agregar.
Cuerpo de la solicitud:
Requerido. Contiene los datos de la parte del objeto que se va a cargar.
Respuesta
Códigos de estado:
200 OK
: La parte se subió correctamente.400 Bad Request
: La solicitud no se pudo procesar debido a un error del cliente.403 Forbidden
: El cliente no tiene permiso para subir la parte.404 Not Found
: El bucket o el cargamento de varias partes no existe.Otros códigos de error: Pueden aplicar códigos de error específicos del servicio S3.
Encabezados de la respuesta:
Date
: Fecha y hora de la respuesta.ETag
: El ETag de la parte recién cargada. Este ETag se debe guardar y proporcionar en la operaciónCompleteMultipartUpload
.x-amz-request-id
: Un identificador único para la solicitud.x-amz-id-2
: Un identificador único extendido para la solicitud.Server
: Información sobre el servidor que procesó la solicitud.x-amz-server-side-encryption
: Si se usó encriptación, devuelve el algoritmo usado.
Cuerpo de la respuesta:
Vacío. No hay contenido en el cuerpo de la respuesta para una carga exitosa de la parte.
Ejemplos
Ejemplo de solicitud (subiendo la primera parte):
PUT /objeto1.txt?partNumber=1&uploadId=9876543210abcdefghijklmnopqrstuvwxyz HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Sat, 31 Jul 2024 00:00:00 GMT
Content-Length: 5242880
Content-MD5: d41d8cd98f00b204e9800998ecf8427e
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==
[Datos binarios de la primera parte (5MB)]
Ejemplo de respuesta:
HTTP/1.1 200 OK
Date: Sat, 31 Jul 2024 00:00:01 GMT
ETag: "parte1-etag-xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server
Ejemplo de solicitud (subiendo la segunda parte):
PUT /objeto1.txt?partNumber=2&uploadId=9876543210abcdefghijklmnopqrstuvwxyz HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Sat, 31 Jul 2024 00:15:00 GMT
Content-Length: 10485760
Content-MD5: 098f6bcd4621d373cade4e832627b4f6
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==
[Datos binarios de la segunda parte (10MB)]
Ejemplo de respuesta:
HTTP/1.1 200 OK
Date: Sat, 31 Jul 2024 00:15:01 GMT
ETag: "parte2-etag-yyyyyyyyyyyyyyyyyyyyyyyyyyyy"
x-amz-request-id: 98765QWERTYUIOP
Server: MyS3Server
Última actualización