Fuente de datos REST API

Introducción

Se utiliza para conectar datos de una fuente REST API.

Instalación

Este plugin es comercial. Para obtener información detallada sobre cómo activarlo, consulta: Guía de activación de plugins comerciales

Agregar una fuente REST API

Después de activar el plugin, selecciona REST API en el menú desplegable Add new de la gestión de fuentes de datos.

20240721171420

Configurar la fuente REST API

20240721171507

Agregar una Collection

Los recursos RESTful son Collections de NocoBase, como el recurso Users.

GET /users
POST /users
GET /users/1
PUT /users/1
DELETE /users/1

La configuración correspondiente en la API de NocoBase es

GET /users:list
POST /users:create
POST /users:get?filterByTk=1
POST /users:update?filterByTk=1
POST /users:destroy?filterByTk=1

Consulta la documentación de la API para obtener información sobre la especificación completa de diseño de la API de NocoBase.

20240716213344

Consulta la sección «NocoBase API - Core».

20240716213258

La configuración de la Collection de la fuente de datos REST API es la siguiente:

List

Configura la asignación de la interfaz para consultar la lista de recursos.

20251201162457

Get

Configura la asignación de la interfaz para consultar los detalles de un recurso.

20251201162744

Create

Configura la asignación de la interfaz para crear un recurso.

20251201163000

Update

Configura la asignación de la interfaz para actualizar un recurso. 20251201163058

Destroy

Configura la asignación de la interfaz para eliminar un recurso.

20251201163204

Las interfaces List y Get son las dos interfaces obligatorias que deben configurarse.

Depurar la API

Conectar los parámetros de la solicitud

Ejemplo: configura los parámetros de paginación para la interfaz List (si la API de terceros no admite paginación, los datos de la lista obtenidos se paginarán).

20251201163500

Ten en cuenta que solo tendrán efecto las variables que se hayan agregado en la interfaz.

Nombre del parámetro de acceso de la API de tercerosParámetro de NocoBase
page{{request.params.page}}
limit{{request.params.pageSize}}

Puedes hacer clic en Try it out para depurar y consultar el resultado de la respuesta.

20251201163635

Conversión del formato de respuesta

Es posible que el formato de respuesta de la API de terceros no coincida con el estándar de NocoBase. Debe convertirse para que pueda mostrarse correctamente en la interfaz.

20251201164529

Ajusta las reglas de conversión según el formato de respuesta de la API de terceros para que cumpla con el estándar de salida de NocoBase.

20251201164629

Descripción del proceso de depuración

20240717110051

Conversión de la información de error

Cuando se produce un error en la API de terceros, es posible que el formato de la información de error de la respuesta no coincida con el estándar de NocoBase. Debe convertirse para que pueda mostrarse correctamente en la interfaz.

20251201170545

Si no se configura la conversión de la información de error, de forma predeterminada se convertirá en información de error que incluye el código de estado HTTP.

20251201170732

Después de configurar la conversión de la información de error, esta cumplirá con el estándar de salida de NocoBase y la interfaz podrá mostrar correctamente la información de error de la API de terceros.

20251201170946 20251201171113

Variables

La fuente de datos REST API proporciona tres tipos de variables para conectar las interfaces.

  • Variables personalizadas de la fuente de datos
  • Solicitud de NocoBase
  • Respuesta de terceros

Variables personalizadas de la fuente de datos

20240716221937

20240716221858

Solicitud de NocoBase

  • Params: parámetros de consulta de la URL (Search Params); los Params varían según la interfaz.
  • Headers: cuerpo de la solicitud; proporciona principalmente algunos encabezados X- personalizados de NocoBase.
  • Body: cuerpo de la solicitud.
  • Token: token de API de la solicitud actual de NocoBase.

20251201164833

Respuesta de terceros

Actualmente solo se proporciona el Body de la respuesta.

20251201164915

Las variables disponibles al conectar cada interfaz son las siguientes:

List

ParámetroDescripción
request.params.pagePágina actual
request.params.pageSizeCantidad de elementos por página
request.params.filterCondiciones de filtrado (deben cumplir el formato Filter de NocoBase)
request.params.sortReglas de ordenación (deben cumplir el formato Sort de NocoBase)
request.params.appendsCampos que se cargarán según sea necesario; generalmente se utiliza para la carga bajo demanda de campos de relación
request.params.fieldsCampos que debe devolver la interfaz (lista blanca)
request.params.exceptCampos que se deben excluir (lista negra)

Get

ParámetroDescripción
request.params.filterByTkObligatorio; generalmente es el ID de los datos actuales
request.params.filterCondiciones de filtrado (deben cumplir el formato Filter de NocoBase)
request.params.appendsCampos que se cargarán según sea necesario; generalmente se utiliza para la carga bajo demanda de campos de relación
request.params.fieldsCampos que debe devolver la interfaz (lista blanca)
request.params.exceptCampos que se deben excluir (lista negra)

Create

ParámetroDescripción
request.params.whiteListLista blanca
request.params.blacklistLista negra
request.bodyDatos iniciales que se crearán

Update

ParámetroDescripción
request.params.filterByTkObligatorio; generalmente es el ID de los datos actuales
request.params.filterCondiciones de filtrado (deben cumplir el formato Filter de NocoBase)
request.params.whiteListLista blanca
request.params.blacklistLista negra
request.bodyDatos que se actualizarán

Destroy

ParámetroDescripción
request.params.filterByTkObligatorio; generalmente es el ID de los datos actuales
request.params.filterCondiciones de filtrado (deben cumplir el formato Filter de NocoBase)

Configurar campos

Extrae los metadatos de los campos (Fields) de los datos de las interfaces CRUD del recurso adaptado y los utiliza como campos de la Collection.

20240716223636

Extraer los metadatos de los campos.

20251201165133

Campos y vista previa.

20240716224403

Editar campos (de forma similar a otras fuentes de datos).

20240716224704

Agregar un bloque de fuente de datos REST API

Una vez configurada la Collection, puedes ir a la interfaz para agregar un bloque.

20240716225120