Saltearse al contenido

uploadMedia

La función uploadMedia sube un recurso binario (imagen, vídeo, documento, …) al almacenamiento de tu proyecto. Es el equivalente en JavaScript/TypeScript del endpoint REST POST /resource/upload.

Le pasas un único File o Blob. El cliente se encarga del resto internamente — incluido el protocolo de subida por chunks que usa el endpoint REST — y devuelve el { name, url } final del recurso subido.

Ejemplo (navegador, usando un <input type="file">):

const input = document.querySelector<HTMLInputElement>('input[type=file]');
const file = input?.files?.[0];
if (file) {
const media = await client.uploadMedia({ file });
console.log(media.url); // https://storage.contentisland.net/.../nombre.png
}

Interface

export interface ApiClient {
uploadMedia: (params: UploadMediaParams) => Promise<Media>;
// ... otros métodos
}
export interface UploadMediaParams {
file: Blob | File;
fileName?: string;
}
export interface Media {
name: string;
url: string;
}

Parámetros

La función acepta un único objeto UploadMediaParams.

NombreDescripción
fileContenido binario del recurso. En navegador, normalmente un File venido de un input; en Node.js puede ser un Blob.
fileNameOpcional. Nombre con el que registrar el fichero. Por defecto 'upload'. Cuando file es un File, lo habitual es pasar aquí file.name.

Salida

La función devuelve una Promise<Media> que se resuelve con los metadatos finales del recurso:

const media = await client.uploadMedia({ file, fileName: file.name });
/*
{
name: 'ab12cd34-portada.png',
url: 'https://storage.contentisland.net/tu-proyecto/ab12cd34-portada.png',
}
*/

Después puedes usar media.url directamente en tu aplicación, o guardarlo en un campo de contenido vía updateContentFieldValue.