FoxServer
FoxServer es un servidor HTTP y HTTPS autónomo que publica lógica escrita en Visual FoxPro, y además sirve sitios web. No hace falta IIS ni Apache: el host es un proceso propio que carga tu MTDLL por COM y atiende las peticiones.
Lo que lo distingue de cualquier otro puente es que el mismo controlador se publica tres veces: como API REST, como método JSON-RPC 2.0 y como herramienta MCP, sin escribir el endpoint tres veces. Escribes una función VFP y un agente de IA la puede llamar igual que la llama tu frontend.
En esta sección
- Instalación: Requisitos, el instalador, el árbol de la instalación y dónde va la licencia.
- Primeros pasos: Tu primera API REST, desde el proyecto vacío hasta la primera respuesta.
- Configuración: El manifiesto del servidor: puertos, HTTPS, logging, orígenes y middlewares.
- Rutas: Cómo se declara una ruta en el HELP, los parámetros y las respuestas.
- Middleware: Los middlewares que trae el host: JWT, logging, SSE, webhooks, estado, OpenAPI.
- Licencias: Developer y Runtime, la activación, el mantenimiento y la puerta de versión.
- Funciones avanzadas: SSE, webhooks salientes, el endpoint de estado y el modo servicio de Windows.
- Ejemplos: Hola mundo, un CRUD completo y un maestro-detalle, listos para copiar.
- Referencia API: La superficie real de ApiController, req y res, miembro a miembro.
- Preguntas frecuentes: Preguntas frecuentes y qué mirar cuando algo no arranca.
Lo que hace
- REST, JSON-RPC 2.0 y MCP desde el mismo controlador. El alias
as <capacidad>delHELPes lo que convierte una ruta en método JSON-RPC y en herramienta MCP - Servidor HTTP y HTTPS autónomo, sin IIS ni Apache, que también sirve sitios web estáticos
- Enrutamiento con parámetros, declarado en el propio comentario
HELPdel método - Middlewares del host: JWT, registro de peticiones, SSE, webhooks salientes, estado con PIN, OpenAPI y Swagger en
/docs /openapi.jsongenerado del proyecto, sin escribirlo a mano- Webhooks salientes con firma Standard Webhooks, reintentos y cola de fallidos
- Modo servicio de Windows, con alta y baja desde el propio host
- Licencia validada en local al arrancar, sin llamar a ningún servidor
Una licencia Developer solo escucha a 127.0.0.1 Es el malentendido número uno del producto, y conviene saberlo antes de comprar: los asientos de FoxServer son licencias Developer, y el host responde 403 a toda petición que no venga de
127.0.0.1. Sirve para desarrollar y para probar en tu máquina. Para que otra máquina de la red o de internet llame a tu API hace falta una licencia Runtime, que es el otro producto de la tienda. El síntoma parece un problema de permisos y es la licencia. Requisitos
Son dos juegos distintos, y mezclarlos es la causa de la mitad de los tropiezos: en la máquina donde desarrollas hace falta el IDE de Visual FoxPro; en la máquina donde sirves, no.
| Para desarrollar | Para servir | |
|---|---|---|
| Visual FoxPro | El IDE de VFP 9 SP2. init, controller-add y build lo necesitan: CREATE PROJECT y BUILD MTDLL no existen en el runtime | Solo el runtime de VFP 9: vfp9r.dll, vfp9t.dll, vfp9renu.dll y msvcr71.dll junto a tu MTDLL |
| .NET | .NET 10 Runtime, variante x86. El de 64 bits no sirve, aunque esté instalado: el host es de 32 bits porque carga el COM de VFP, que lo es | Lo mismo: .NET 10 Runtime x86 |
| Windows | Windows 10 o superior, de 32 o 64 bits | Windows 10 o superior |
| Permisos | Consola elevada para build: BUILD MTDLL registra la coclase al terminar | Administrador solo para instalar y para dar de alta el servicio |
| Licencia | Developer (localhost) | Runtime, si va a atender a otras máquinas |
Sin conexión a internet FoxServer no llama a ningún servidor externo para funcionar. La licencia es un JWT que se comprueba en local al arrancar, contra una clave pública dentro del binario. Versión publicada: 0.9.38.