HTMX Engine Server

TsgcHTMX_Engine_Server — gestiona peticiones de intercambio parcial de página de htmx a través de HTTP y transmite fragmentos fuera de banda en vivo a todos los navegadores conectados a través de WebSocket.

TsgcHTMX_Engine_Server

Conecta las actualizaciones parciales impulsadas por HTTP de htmx con el server-push por WebSocket. Las peticiones htmx entrantes se despachan a OnHTMXRequest; tu manejador devuelve solo el fragmento a intercambiar. Llama a BroadcastFragment en cualquier momento para enviar actualizaciones en vivo fuera de banda a todos los navegadores conectados.

Clase del componente

TsgcHTMX_Engine_Server

Rol

Intercambios htmx y server push en vivo

Lenguajes

Delphi, C++ Builder, .NET

Gestionar peticiones htmx y enviar fragmentos en vivo

Conecta el motor a tu servidor WebSocket, gestiona las peticiones de intercambio parcial en OnHTMXRequest y llama a BroadcastFragment para enviar actualizaciones a todos los navegadores conectados.

uses
  sgcHTMX_Engine_Server;

var
  oHTMX: TsgcHTMX_Engine_Server;
begin
  oHTMX := TsgcHTMX_Engine_Server.Create(nil);
  oHTMX.Server         := WSSServer;
  oHTMX.OnHTMXRequest  := HandleHTMXRequest;

  // later, from any thread, push a KPI update:
  oHTMX.BroadcastFragment(
    '<div id="kpi-revenue" hx-swap-oob="true">' +
    CurrToStr(FRevenue) + '</div>');
end;
TsgcHTMX_Engine_Server *oHTMX = new TsgcHTMX_Engine_Server(NULL);
oHTMX->Server        = WSSServer;
oHTMX->OnHTMXRequest = HandleHTMXRequest;

// push a live update:
oHTMX->BroadcastFragment(
  "<div id=\"kpi-revenue\" hx-swap-oob=\"true\">" +
  CurrToStr(FRevenue) + "</div>");
var htmx = new TsgcHTMX_Engine_Server();
htmx.Server        = wssServer;
htmx.OnHTMXRequest += HandleHTMXRequest;

// push a live update:
htmx.BroadcastFragment(
    "<div id=\"kpi-revenue\" hx-swap-oob=\"true\">" +
    revenue.ToString("N0") + "</div>");

Propiedades y métodos clave

Los miembros que usarás con más frecuencia.

Server

El TsgcWSHTTPServer al que se conecta este motor; gestiona tanto las peticiones HTTP de intercambio parcial como el push por WebSocket.

OnHTMXRequest

Evento disparado para cada petición HTTP activada por htmx; tu manejador devuelve solo el HTML del fragmento a intercambiar.

BroadcastFragment

Envía un payload htmx fuera de banda a todos los clientes WebSocket conectados simultáneamente.

HandleRequest

Llamado por el servidor anfitrión para cada petición; identifica las cabeceras htmx y enruta a OnHTMXRequest o deja pasar.

hx-swap-oob

Atributo de intercambio fuera de banda de htmx: el id del fragmento debe coincidir con el id del elemento destino en la página.

Seguridad en hilos

BroadcastFragment es seguro para hilos; llámalo desde temporizadores en segundo plano, hilos de push o manejadores de eventos sin necesidad de bloqueo.

Sigue explorando

Ayuda en líneaReferencia completa de la API y guía de uso para este componente.
Todos los componentes de sgcHTMLExplora la matriz completa de más de 60 componentes.
Descargar prueba gratuitaLa prueba de 30 días incluye los proyectos de demostración 60.HTML.
PreciosLicencias Single, Team y Site con código fuente completo.

¿Listo para empezar?

Descarga la prueba gratuita y empieza a crear interfaces web en Delphi, C++ Builder y .NET.