WinFx
Herramienta para crear proyectos nativos FoxPro compatibles con FoxServer
Contenido
Introducción a WinFx
WinFx es una herramienta de desarrollo diseñada para facilitar la creación y configuración de proyectos nativos de Visual FoxPro que son compatibles con FoxServer. Esta aplicación proporciona una interfaz gráfica intuitiva que te permite configurar todos los aspectos necesarios para implementar APIs REST y sitios web utilizando FoxServer como framework base.
WinFx y FoxServer son herramientas complementarias. FoxServer es el framework que proporciona la funcionalidad para crear servidores web y APIs con Visual FoxPro, mientras que WinFx es una herramienta visual para configurar y generar proyectos basados en FoxServer.
¿Por qué usar WinFx?
Aunque es posible configurar manualmente proyectos de FoxServer, WinFx ofrece varias ventajas:
- Configuración visual: Interfaz gráfica que facilita la configuración sin necesidad de editar archivos manualmente.
- Generación automática de estructura: Crea automáticamente la estructura de carpetas y archivos necesarios para tu proyecto.
- Configuración simplificada: Opciones claras para configurar aspectos como CORS, certificados SSL y autenticación JWT.
- Ahorro de tiempo: Reduce significativamente el tiempo necesario para iniciar un nuevo proyecto.
Tipos de proyectos
Proyectos API
Crea APIs RESTful completas utilizando Visual FoxPro como backend, con soporte para todos los métodos HTTP estándar (GET, POST, PUT, DELETE, etc.).
Proyectos Web
Desarrolla sitios web dinámicos con Visual FoxPro como motor de procesamiento, combinando la potencia de VFP con tecnologías web modernas.
Características principales

Configuración del Servidor
La pestaña de Servidor te permite configurar los parámetros básicos:
- Tipo de proyecto: API REST o Sitio Web
- Protocolo: HTTP o HTTPS
- Nombre del sitio: Identificador para tu proyecto
- Host: Dirección IP o nombre de host
- Puerto: Puerto para el servidor
- Ruta física: Ubicación en disco donde se generará el proyecto

Configuración CORS
Configura el acceso desde diferentes orígenes a tu API:
- Orígenes permitidos: Dominios que pueden acceder a tu API
- Métodos permitidos: GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD
- Cabeceras permitidas: Cabeceras HTTP personalizadas que se pueden utilizar
Esta configuración es esencial cuando tu API será consumida desde dominios diferentes al que la aloja.

Certificados SSL
Para habilitar HTTPS en tu servidor, necesitas configurar un certificado SSL:
- Ruta del certificado: Ubicación del archivo .pfx
- Contraseña: Contraseña del certificado
- Validar o crear certificado: Opción para validar un certificado existente o crear uno nuevo
WinFx utiliza OpenSSL para la generación de certificados. Si no tienes OpenSSL instalado, puedes descargarlo desde el enlace proporcionado.

Seguridad
Configura opciones de seguridad y registro para tu servidor:
- Autenticación JWT: Habilita la autenticación mediante tokens JWT
- Clave secreta: Clave para firmar los tokens JWT
- Expiración del token: Tiempo de validez del token en segundos
- Endpoint de login: Ruta para la autenticación
- Registro en archivo log: Habilita el registro de actividad
- Consultas de estado del servidor: Permite monitorear el estado del servidor
Primeros pasos con WinFx
Para comenzar a utilizar WinFx, sigue estos pasos básicos:
-
Instalación
-
Crear un nuevo proyecto
Inicia WinFx y haz clic en "Nuevo Sitio" para comenzar la configuración de un nuevo proyecto.
-
Configurar el proyecto
Selecciona el tipo de proyecto (API o Web) y configura los parámetros básicos como nombre, puerto y ruta.
-
Configurar opciones avanzadas
Navega por las pestañas CORS, Certificado y Seguridad para configurar opciones adicionales según tus necesidades.
-
Generar el proyecto
Haz clic en "Crear" para generar la estructura del proyecto y comenzar a desarrollar.
Integración con FoxServer
WinFx está diseñado para trabajar perfectamente con FoxServer, generando proyectos que aprovechan todas las capacidades del framework. Los proyectos creados con WinFx son totalmente compatibles con FoxServer y siguen las mejores prácticas recomendadas para el desarrollo con este framework.
Para obtener más información sobre cómo utilizar FoxServer una vez que hayas creado tu proyecto con WinFx, consulta la documentación de FoxServer.