GetObject

Documentación: GetObject

Descripción

La operación GetObject recupera un objeto de un bucket.

Solicitud

Método: GET

URI:

  • Estilo virtual-host: https://{bucket-name}.s3.latam-scl-x.datageneral.cl/{object-key}

  • Estilo path: https://s3.latam-scl-x.datageneral.cl/{bucket-name}/{object-key}

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.

  • Authorization: Requerido. Contiene la firma de la solicitud para la autenticación.

  • Range: Opcional. Recupera el rango de bytes especificado del objeto.

  • If-Modified-Since: Opcional. Devuelve el objeto solo si ha sido modificado desde la fecha especificada.

  • If-Unmodified-Since: Opcional. Devuelve el objeto solo si no ha sido modificado desde la fecha especificada.

  • If-Match: Opcional. Devuelve el objeto solo si el ETag coincide con el ETag especificado.

  • If-None-Match: Opcional. Devuelve el objeto solo si el ETag no coincide con el ETag especificado.

  • x-amz-request-payer: Opcional. Si se establece en requester, indica que el solicitante pagará por la solicitud y la transferencia de datos.

  • x-amz-version-id: Opcional. Especifica una versión particular del objeto.

  • response-content-type: Opcional. Establece el encabezado Content-Type en la respuesta.

  • response-content-disposition: Opcional. Establece el encabezado Content-Disposition en la respuesta.

  • response-cache-control: Opcional. Establece el encabezado Cache-Control en la respuesta.

  • response-expires: Opcional. Establece el encabezado Expires en la respuesta.

  • response-content-encoding: Opcional. Establece el encabezado Content-Encoding en la respuesta.

  • response-content-language: Opcional. Establece el encabezado Content-Language en la respuesta.

Cuerpo de la solicitud:

  • Vacío. No se requiere un cuerpo de solicitud para recuperar un objeto.

Respuesta

Códigos de estado:

  • 200 OK: La solicitud fue exitosa. El objeto se devuelve en el cuerpo de la respuesta.

  • 206 Partial Content: La solicitud fue exitosa, pero solo se devolvió un rango de bytes del objeto.

  • 304 Not Modified: El objeto no ha sido modificado desde la fecha especificada en el encabezado If-Modified-Since.

  • 400 Bad Request: La solicitud no se pudo procesar debido a un error del cliente.

  • 403 Forbidden: El cliente no tiene permiso para acceder al objeto.

  • 404 Not Found: El objeto no existe.

  • 412 Precondition Failed: Una o más de las condiciones especificadas en los encabezados If-Modified-Since, If-Unmodified-Since, If-Match, o If-None-Match no se cumplieron.

  • 416 Requested Range Not Satisfiable: El rango especificado en el encabezado Range no es válido.

  • 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.

  • Content-Type: El tipo de contenido del objeto.

  • Content-Length: El tamaño del objeto en bytes.

  • ETag: El ETag del objeto.

  • Last-Modified: La fecha y hora en que se modificó por última vez el objeto.

  • Accept-Ranges: Indica que se aceptan solicitudes de rango para el objeto (bytes).

  • x-amz-version-id: La versión del objeto (si está habilitado el versionamiento).

  • x-amz-storage-class: La clase de almacenamiento del objeto.

  • 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.

  • Cualquier metadato definido por el usuario: Los metadatos definidos por el usuario se devuelven con el prefijo x-amz-meta-.

  • Content-Range: Si se especificó un rango, este encabezado especifica el rango de bytes devuelto.

  • Content-Disposition: Si se especificó response-content-disposition, este encabezado especifica cómo se debe mostrar el contenido.

  • Cache-Control: Si se especificó response-cache-control, este encabezado especifica las directivas de almacenamiento en caché.

  • Expires: Si se especificó response-expires, este encabezado especifica la fecha y hora en que el contenido se considera no válido.

  • Content-Encoding: Si se especificó response-content-encoding, este encabezado especifica la codificación del contenido.

  • Content-Language: Si se especificó response-content-language, este encabezado especifica el idioma del contenido.

Cuerpo de la respuesta:

  • Contiene los datos del objeto, a menos que se haya producido un error.

Ejemplos

Ejemplo de solicitud (sin encabezados opcionales):

GET /objeto1.txt HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Fri, 30 Jul 2024 21:00:00 GMT
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==

Ejemplo de respuesta:

HTTP/1.1 200 OK
Date: Fri, 30 Jul 2024 21:00:01 GMT
Content-Type: text/plain
Content-Length: 1024
ETag: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Last-Modified: Fri, 30 Jul 2024 19:00:00 GMT
Accept-Ranges: bytes
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server

[Contenido del objeto: "Este es el contenido del objeto de ejemplo."]

Ejemplo de solicitud (con encabezado Range):

GET /objeto1.txt HTTP/1.1
Host: my-bucket.s3.latam-scl-x.datageneral.cl
Date: Fri, 30 Jul 2024 21:00:00 GMT
Authorization: AWS AKIAIOSFODNN7EXAMPLE:QWxhZGVpbjEgXA==
Range: bytes=0-1023

Ejemplo de respuesta:

HTTP/1.1 206 Partial Content
Date: Fri, 30 Jul 2024 21:00:01 GMT
Content-Type: text/plain
Content-Length: 1024
ETag: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Last-Modified: Fri, 30 Jul 2024 19:00:00 GMT
Accept-Ranges: bytes
Content-Range: bytes 0-1023/2048
x-amz-request-id: 65423A7B884B82F1
Server: MyS3Server

[Contenido del objeto: "Este es el contenido parcial del objeto de ejemplo."]

Última actualización