WinFx

Herramienta para crear proyectos nativos FoxPro compatibles con FoxServer

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 en WinFx

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 en WinFx

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.

Configuración de Certificados en WinFx

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.

Configuración de Seguridad en WinFx

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:

  1. Instalación

    Descarga e instala WinFx

  2. Crear un nuevo proyecto

    Inicia WinFx y haz clic en "Nuevo Sitio" para comenzar la configuración de un nuevo proyecto.

  3. Configurar el proyecto

    Selecciona el tipo de proyecto (API o Web) y configura los parámetros básicos como nombre, puerto y ruta.

  4. Configurar opciones avanzadas

    Navega por las pestañas CORS, Certificado y Seguridad para configurar opciones adicionales según tus necesidades.

  5. 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.