Comencemos
4D le ofrece un servidor REST poderoso, que permite el acceso directo a los datos almacenados en sus bases de datos 4D.
El servidor REST está incluido en las aplicaciones 4D y 4D Server, está automáticamente disponible en sus bases 4D una vez configurado.
Esta sección pretende ayudar a familiarizarse con la funcionalidad de REST mediante un ejemplo sencillo. Vamos a:
- crear y configurar una base de datos 4D simple
 - acceder a los datos de la base 4D a través de REST utilizando un navegador estándar.
 
Para simplificar el ejemplo, vamos a utilizar una aplicación 4D y un navegador que se ejecutan en la misma máquina. Por supuesto, también puede utilizar una arquitectura remota.
Crear y configurar la base de datos 4D
- 
Lance su aplicación 4D o 4D Server y cree una nueva base de datos. Puede llamarlo, por ejemplo, "Emp4D".
 - 
En el editor de estructura, cree una tabla [Employees] y añada los siguientes campos a la misma:
 
- Lastname (Alpha)
 - Firstname (Alpha)
 - Salary (Longint)
 
La opción "Exponer un recurso REST" está marcada por defecto para la tabla y cada campo; no cambie esta configuración.
- Cree los formularios y, a continuación, cree algunos empleados:
 
- 
Muestre la página Recursos web/REST de la caja de diálogo de las Propiedades de la base de datos y marque la opción Exponer como servidor REST.
 - 
En el menú Ejecutar, seleccione Iniciar el servidor Web (si es necesario), luego seleccione Probar el servidor Web.
 
4D muestra la página de inicio por defecto del servidor web de 4D.
Acceso a los datos 4D con el navegador
Ahora puede leer y editar datos dentro de 4D sólo a través de peticiones REST.
Toda petición de URL 4D REST comienza por /rest, que se debe insertar después del área address:port. Por ejemplo, para ver lo que hay dentro del almacén de datos de 4D, puede escribir:
http://127.0.0.1/rest/$catalog
El servidor REST responde:
{
 "__UNIQID": "96A49F7EF2ABDE44BF32059D9ABC65C1",
 "dataClasses": [
  {
   "name": "Employees",
   "uri": "/rest/$catalog/Employees",
   "dataURI": "/rest/Employees"
  }
 ]
}
Esto significa que el almacén de datos contiene la clase de datos Employees. Puede ver los atributos de la clase de datos escribiendo:
/rest/$catalog/Employees
Si desea obtener todas las entidades de la clase de datos Employee, escriba:
/rest/Employees
Respuesta:
{
 "__entityModel": "Employees",
 "__GlobalStamp": 0,
 "__COUNT": 3,
 "__FIRST": 0,
 "__ENTITIES": [
  {
   "__KEY": "1",
   "__TIMESTAMP": "2020-01-07T17:07:52.467Z",
   "__STAMP": 2,
   "ID": 1,
   "Lastname": "Brown",
   "Firstname": "Michael",
   "Salary": 25000
  },
  {
   "__KEY": "2",
   "__TIMESTAMP": "2020-01-07T17:08:14.387Z",
   "__STAMP": 2,
   "ID": 2,
   "Lastname": "Jones",
   "Firstname": "Maryanne",
   "Salary": 35000
  },
  {
   "__KEY": "3",
   "__TIMESTAMP": "2020-01-07T17:08:34.844Z",
   "__STAMP": 2,
   "ID": 3,
   "Lastname": "Smithers",
   "Firstname": "Jack",
   "Salary": 41000
  }
 ],
 "__SENT": 3
}
Tiene muchas posibilidades para filtrar los datos a recibir. Por ejemplo, para obtener sólo el valor del atributo "Lastname" de la 2ª entidad, basta con escribir:
/rest/Employees(2)/Lastname
Respuesta:
{
 "__entityModel": "Employees",
 "__KEY": "2",
 "__TIMESTAMP": "2020-01-07T17:08:14.387Z",
 "__STAMP": 2,
 "Lastname": "Jones"
}
La API REST ofrece varios comandos para interactuar con la base 4D.