API HTTP
La carga de archivos de los campos de adjuntos y las tablas de archivos admite el procesamiento mediante la API HTTP. Según el motor de almacenamiento utilizado por los adjuntos o la tabla de archivos, existen diferentes formas de realizar las llamadas.
Carga desde el servidor
Para los motores de almacenamiento de código abierto integrados en el proyecto, como S3, OSS y COS, la API HTTP utiliza la misma función de llamada que la carga desde la interfaz de usuario; todos los archivos se cargan a través del servidor. Para llamar a la interfaz, es necesario transmitir en el encabezado de solicitud Authorization un token JWT basado en el inicio de sesión del usuario; de lo contrario, se rechazará el acceso.
Campo de adjuntos
Inicia la operación create sobre el recurso de la tabla de adjuntos (attachments), envía la solicitud mediante POST y carga el contenido binario a través del campo file. Tras la llamada, el archivo se cargará en el motor de almacenamiento predeterminado.
Si necesitas cargar el archivo en otro motor de almacenamiento, puedes especificar mediante el parámetro attachmentField el motor de almacenamiento configurado para el campo de la tabla de datos correspondiente (si no está configurado, se cargará en el motor de almacenamiento predeterminado).
Tabla de archivos
La carga en una tabla de archivos generará automáticamente un registro de archivo. Inicia la operación create sobre el recurso de la tabla de archivos, envía la solicitud mediante POST y carga el contenido binario a través del campo file.
No es necesario especificar el motor de almacenamiento al cargar en una tabla de archivos; el archivo se cargará en el motor de almacenamiento configurado para dicha tabla.
Carga desde el cliente
Para los motores de almacenamiento compatibles con S3 proporcionados por el complemento comercial S3-Pro, la carga mediante la API HTTP requiere varias llamadas que deben realizarse por pasos.
Campo de adjuntos
-
Obtener información del motor de almacenamiento
Inicia la operación getBasicInfo sobre la tabla de almacenamiento (storages), incluyendo el identificador del espacio de almacenamiento (storage name), para solicitar la información de configuración del motor de almacenamiento.
Ejemplo de la información de configuración del motor de almacenamiento devuelta:
-
Obtener la información prefirmada del proveedor
Inicia la operación createPresignedUrl sobre el recurso fileStorageS3, envía la solicitud mediante POST e incluye en el body la información relacionada con el archivo para obtener la información de carga prefirmada.
Descripción:
- name: nombre del archivo
- size: tamaño del archivo (en bytes)
- type: tipo MIME del archivo; consulta:Tipos MIME comunes
- storageId: ID del motor de almacenamiento (campo
iddevuelto en el primer paso) - storageType: tipo de motor de almacenamiento (campo type devuelto en el primer paso)
Datos de solicitud de ejemplo:
La estructura de los datos de la información prefirmada obtenida es la siguiente:
-
Carga de archivos
Utiliza putUrl devuelto para iniciar una solicitud PUT y cargar el archivo como body.
Descripción:
- putUrl: campo putUrl devuelto en el paso anterior
- file_path: ruta del archivo local que se va a cargar
Datos de solicitud de ejemplo:
-
Crear un registro de archivo
Tras cargar correctamente el archivo, inicia la operación create sobre el recurso de la tabla de adjuntos (attachments), envía la solicitud mediante POST y crea el registro de archivo.
Descripción de los datos dependientes en data-raw:
- title: campo
fileInfo.titledevuelto en el paso anterior - filename: campo
fileInfo.keydevuelto en el paso anterior - extname: campo
fileInfo.extnamedevuelto en el paso anterior - path: vacío de forma predeterminada
- size: campo
fileInfo.sizedevuelto en el paso anterior - url: vacío de forma predeterminada
- mimetype: campo
fileInfo.mimetypedevuelto en el paso anterior - meta: campo
fileInfo.metadevuelto en el paso anterior - storageId: campo
iddevuelto en el primer paso
Datos de solicitud de ejemplo:
- title: campo
Tabla de archivos
Las tres primeras operaciones son iguales que en la carga de campos de adjuntos, pero en el cuarto paso es necesario crear un registro de archivo. Para ello, inicia la operación create sobre el recurso de la tabla de archivos, envía la solicitud mediante POST y carga la información del archivo en el body.
Descripción de los datos dependientes en data-raw:
- title: campo fileInfo.title devuelto en el paso anterior
- filename: campo fileInfo.key devuelto en el paso anterior
- extname: campo fileInfo.extname devuelto en el paso anterior
- path: vacío de forma predeterminada
- size: campo fileInfo.size devuelto en el paso anterior
- url: vacío de forma predeterminada
- mimetype: campo fileInfo.mimetype devuelto en el paso anterior
- meta: campo fileInfo.meta devuelto en el paso anterior
- storageId: campo id devuelto en el primer paso
Datos de solicitud de ejemplo:

