put(file, options)
put() sube un archivo y devuelve el nuevo objeto.
Entradas
La extensión del objeto se toma de
filename y, si no, del nombre base de la ruta o del nombre del File. Los bytes y un Blob simple no tienen nombre, así que pasa filename (por ejemplo "data.json") al subirlos.
En Node.js, una ruta que no se puede abrir lanza un
Error simple (Cannot open file: <path>, con el error original en cause). En un navegador, pasar una ruta falla antes, con el error de importar node:fs. Usa en su lugar un File de un <input type="file">.Opciones
Consulta Object Post para ver todas las reglas del servidor.
Resultado
Subidas simples y multipart
put() elige el flujo de subida según el tamaño del archivo:
Todo archivo debe tener al menos 512 bytes; los archivos más pequeños fallan con
FILE_TOO_SMALL. El max_size de una regla o de un token de subida, o tu cuota de almacenamiento, pueden reducir el límite de 10 GiB.
Cómo se ejecuta una subida multipart
- El SDK inicia la subida y el servidor responde con sus límites de partes (
max_size,max_parts). - El archivo se divide en partes de
min(max_size, max(16 MiB, ceil(size / max_parts)))bytes. Una parte suele tener 16 MiB o más, pero es más pequeña cuando elmax_sizedel servidor es menor. - Las partes se envían de 6 en 6, el límite del servidor para partes en curso. Una parte fallida se reintenta dentro de
maxRetries. - Cuando han llegado todas las partes, el SDK completa la subida.
put().
Una cuenta puede tener como máximo 32 subidas multipart abiertas (compartidas con el gateway S3); una más falla con
TOO_MANY_OPEN_UPLOADS. Como las partes van de 6 en 6 por cuenta, ejecuta una subida grande cada vez.Subir desde el navegador
Nunca envíes la clave de API a un navegador. En su lugar, tu servidor genera un token de subida de corta duración y el navegador sube con él.- Servidor
put(), incluidas las subidas multipart. Cualquier otro método falla con 403 UPLOAD_TOKEN_NOT_ALLOWED.
uploadTokens.create(options)
El token fija todas las opciones con las que se generó.
Devuelve
{ token, expires_at, max_uses }. Consulta Upload Tokens para ver las reglas del servidor.
uploadTokens.create() es una escritura y tiene un único intento: nunca se reintenta.
