---
title: "Descargar objeto"
url: https://docs.catalyst.zoho.com/es/sdk/web/v4/cloud-scale/stratus/download-object/
description: "Esta página describe el método del Web SDK para recuperar un objeto de Stratus."
last_updated: 2026-03-30T08:10:30Z
service: Cloud Scale
type: general
related_links:
- name: "Stratus Component Help Documentation"
url: /es/cloud-scale/help/stratus/introduction
- name: "Java SDK"
url: /es/sdk/java/v1/cloud-scale/stratus/download-object/
- name: "Node.js SDK"
url: /es/sdk/nodejs/v2/cloud-scale/stratus/download-object/
- name: "Python SDK"
url: /es/sdk/python/v1/cloud-scale/stratus/download-object/
- name: "iOS SDK"
url: /es/sdk/ios/v2/cloud-scale/stratus/download-object/
- name: "Android SDK"
url: /es/sdk/android/v2/cloud-scale/stratus/download-object/
- name: "Flutter SDK"
url: /es/sdk/flutter/v2/cloud-scale/stratus/download-object/
- name: "REST API"
url: /es/api/code-reference/cloud-scale/stratus/get-all-buckets/#GetAllBuckets
---
# Descargar objeto
Este método del SDK se puede usar para descargar un objeto del bucket. La respuesta estará en formato **blob**. La referencia de Stratus utilizada en el fragmento de código a continuación es la [instancia del componente](https://docs.catalyst.zoho.com/es/sdk/web/v4/cloud-scale/stratus/initialize-stratus-instance/).
Respuestas esperadas con respecto al estado de [Versionado](https://docs.catalyst.zoho.com/es/cloud-scale/help/stratus/stratus-config/general-settings/#versioning) del bucket:
* Si no pasas el `versionId`, obtendrás el **último objeto**, junto con la clave que mencionas en la solicitud.
* Si el Versionado fue habilitado para un bucket y luego deshabilitado. Por defecto, se devolverá el objeto principal primero. Para asegurarte de descargar la última versión de este objeto, necesitas pasar el parámetro `versionId` con el valor "`topVersion`".
* Para recuperar una versión específica, usa el parámetro de consulta `versionId` con una versión válida como valor.
**Parámetros utilizados**
| Nombre del parámetro |
Tipo de dato |
Definición |
| `key` |
**String** |
Contendrá el nombre del objeto |
| `options` |
**JSON Object** |
- `versionId`: Este es un parámetro **String** opcional. Contendrá el `version ID` único de la versión del objeto requerido.
- `range`: Este es un parámetro **String** opcional. El rango de bytes del objeto requerido. Se usará para obtener una parte específica del objeto.
- `cached`: Este es un parámetro **Boolean** opcional.
- Se usará para obtener la versión en caché del objeto
- Solo aceptará dos valores: "`true`" o "`false`"
- `false` será el valor si no se usa este parámetro
- `true` será el valor si el [Caching](https://docs.catalyst.zoho.com/es/cloud-scale/help/stratus/stratus-config/general-settings/#caching) está habilitado para tu bucket y pasas este parámetro. En este caso, el objeto se recuperará del dominio en caché.
- `signed`: Este es un parámetro **Boolean** opcional. El valor por defecto es "`false`". Realizará una llamada API para obtener una URL firmada.
- `signedUrlFn`:
- Este es un parámetro **Function** opcional.
- Esta es una función de callback que devolverá una **respuesta de API de signedurl** proporcionada en el SDK del servidor ([Java](https://docs.catalyst.zoho.com/es/sdk/java/v1/cloud-scale/stratus/pre-signed-urls/), [Node.js](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/cloud-scale/stratus/pre-signed-urls/) y [Python](https://docs.catalyst.zoho.com/es/sdk/python/v1/cloud-scale/stratus/pre-signed-urls/)) para descargar un archivo.
- Esta función solo aceptará funciones asíncronas y promesas.
- Cuando se usa esta función, Catalyst le pasará la URL en caché y el tiempo de expiración como parámetros que se pueden usar para generar una URL firmada.
|
| `processCallback` |
**Function** |
Función de callback durante la descarga del archivo |
### Descargar objeto usando el nombre del objeto
El siguiente fragmento del SDK te permitirá descargar un objeto de un bucket en Stratus usando su `key`.
```javascript
const getObject = await bucket.getObject("key");
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
### Descargar una versión particular del objeto
El siguiente fragmento del SDK te permitirá descargar una versión particular del objeto de un bucket en Stratus usando su `key` y `versionId`.
```javascript
const options = {
'versionId': 'djkshr8374yiuhf48', // descargar una versión específica de un objeto
}
const getObject = await bucket.getObject("key", options);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
### Descargar objeto con Process Callback
El siguiente fragmento del SDK te permitirá descargar un objeto particular de un bucket en Stratus con opciones de process callback. Este SDK se utiliza mejor cuando deseas realizar una función adicional como logging, renderizar pantallas de carga/buffer, etc. junto con la operación de descarga.
```javascript
// procesar callback mientras se descarga un objeto
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'versionId': 'djkshr8374yiuhf48'
}
const getObject = await bucket.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
**Respuesta de ejemplo**
```json
{
"status": 200,
"content": {Blob Data},
"message": "OK"
}
```
**Excepciones posibles**
* **404**: Objeto o Bucket no encontrado
* **416**: Rango solicitado no satisfactorio
### Descargar una parte particular del objeto
En esta sección, vamos a revisar un método del SDK que te permitirá descargar exitosamente un rango de bytes requerido del objeto de Stratus a tu sistema local. La referencia de Stratus utilizada en el fragmento de código a continuación es la [instancia del componente](https://docs.catalyst.zoho.com/es/sdk/web/v4/cloud-scale/stratus/initialize-stratus-instance/).
Este método funciona de manera que el objeto se divide en múltiples rangos de bytes usando los bytes de inicio y fin del objeto.
```javascript
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'range': '0-2000' // rango inicial y final del objeto en bytes
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
**Respuesta de ejemplo**
```json
{
"status": 206,
"content": {Blob Data},
"message": "PARTIAL_CONTENT"
}
```
### Descargar objeto usando una URL firmada
#### Usando funciones asíncronas
```javascript
// Descargar objeto usando Signed URL
// Usando Función Asíncrona
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'range': '0-2000' // rango de inicio y fin del objeto en bytes,
'signed': true, // declarar que se usará signed URL para obtener objetos del bucket.
'signedUrlFn' : async (functionData) => {
console.log("Data : " + functionData);
// Lógica de la Función
return {
"signed_url": "" //signed url
}
}
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
#### Usando promesas
```javascript
// Usando Promises
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'range': '0-2000' // rango de inicio y fin del objeto en bytes,
'signed': true, // declarar que se usará signed URL para obtener objetos del bucket.
'signedUrlFn' : (functionData) => {
return new Promise((resolve, reject) => {
console.log("Data : " + functionData);
// Lógica de la Función
resolve({
"signed_url" : ""
})
})
}
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
#### Usando SignedURL con opciones
El siguiente método del SDK te permitirá descargar un objeto usando una URL firmada y establecer un **tiempo de expiración** para la URL firmada.
```javascript
// Descargar objeto usando Signed URL y tiempo de expiración
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'range': '0-2000' // rango de inicio y fin del objeto en bytes,
'signed': true, // declarar que se usará signed URL para obtener objetos del bucket.
'signedUrlFn' : async (functionData) => {
console.log("Data : " + functionData);
// Lógica de la Función
return {
"signed_url": "" // Signed URL
}
},
"expiryInSeconds" : 3000 // En segundos
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```
### Descargar un objeto en caché usando URL en caché
El siguiente método del SDK te permitirá descargar un objeto en caché usando la [URL en caché](https://docs.catalyst.zoho.com/es/cloud-scale/help/stratus/stratus-config/general-settings/#caching).
```javascript
// URL en caché
const processCallback = () => {
// Función a ejecutar mientras se obtiene el objeto
console.log("Downloading Object");
}
const options = {
'range': '0-2000' // rango de inicio y fin del objeto en bytes,
'cached': true, // declarar que se usará cached URL para obtener objetos del bucket.
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // para iniciar la solicitud
const getObjectAbort = getObject.abort(); // para cancelar la solicitud
```