Almacene y proporcione archivos con el SDK de JavaScript
Los flujos cotidianos de aura.storage, con las reglas de acceso observadas en una pila en ejecución.
1. cubos
Un depósito agrupa archivos y decide si son públicos. Para crear y eliminar depósitos se necesita una clave service_role. Para enumerarlos se necesita un usuario que haya iniciado sesión o una clave service_role; la clave pública por sí sola obtiene 403.
Un depósito también acepta fileSizeLimit (en bytes) y allowedMimeTypes. Una carga demasiado grande devuelve 413 y un tipo que no está permitido devuelve 400.
2. Cargar, descargar, listar, eliminar
Qué esperar:
- Al cargar una ruta existente se devuelve
409a menos que paseupsert: true. - La carga necesita un usuario que haya iniciado sesión o una clave
service_role. La clave pública por sí sola obtiene403, incluso para un depósito público. - Se rechaza una ruta con
..con400. - Las rutas se comparten dentro de un depósito. Si otro usuario ya tiene la ruta, obtienes
409. Coloque los archivos de cada usuario en su propia carpeta, como${user.id}/….
3. Comparte un archivo
Ambos enlaces se obtuvieron sin ninguna clave y devolvieron el archivo. Un enlace firmado deja de funcionar después de expires_in segundos. Para permitir que un navegador cargue sin una clave, un servidor crea createSignedUploadUrl(path) (una llamada service_role).
4. ¿Quién puede hacer qué?
| acción | Clave pública | Usuario registrado | service_role |
|---|---|---|---|
| Leer un archivo en un depósito público | si | si | si |
| Leer, enumerar un archivo en un depósito privado | no | solo su dueño | si |
| Subir | no | si | si |
| Reemplazar o eliminar un archivo | no | solo su dueño | si |
| Listar depósitos | no | si | si |
| Crear, eliminar depósitos | no | no | si |
El propietario es el usuario que subió el archivo. En una ejecución real, un segundo usuario no pudo enumerar, descargar o eliminar el archivo del primer usuario en un depósito privado y tampoco pudo reemplazarlo.
5. Mover y copiar, desde un servidor
El cambio de tamaño de la imagen se describe en la referencia de almacenamiento.