HTMX Engine Server

TsgcHTMX_Engine_Server — verwerkt htmx-verzoeken voor gedeeltelijke paginawissel via HTTP en verstuurt live out-of-band-fragmenten naar alle verbonden browsers via WebSocket.

TsgcHTMX_Engine_Server

Verbindt de HTTP-gestuurde gedeeltelijke updates van htmx met WebSocket-server-push. Binnenkomende htmx-verzoeken worden verzonden naar OnHTMXMessage; uw handler geeft alleen het te vervangen fragment terug. Roep BroadcastFragment op elk moment aan om live out-of-band-updates naar elke verbonden browser te sturen.

Componentklasse

TsgcHTMX_Engine_Server

Rol

htmx-wissels en live server-push

Talen

Delphi, C++ Builder, .NET

Verwerk htmx-verzoeken en verstuur live fragmenten

Koppel de engine aan uw WebSocket-server, verwerk gedeeltelijke wisselverzoeken in OnHTMXMessage en roep BroadcastFragment aan om updates naar elke verbonden browser te sturen.

uses
  sgcHTMX_Engine_Server;

var
  oHTMX: TsgcHTMX_Engine_Server;
begin
  oHTMX := TsgcHTMX_Engine_Server.Create(nil);
  oHTMX.Server         := WSSServer;
  oHTMX.OnHTMXMessage  := 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->OnHTMXMessage = 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.OnHTMXMessage += HandleHTMXRequest;

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

Belangrijkste eigenschappen en methoden

De leden die u het vaakst gebruikt.

Server

De TsgcHTTPServer waaraan deze engine gekoppeld is en die de HTTP-wisselverzoeken verwerkt. Wijs een TsgcWSHTTPServer toe wanneer de WebSocket-server geïnstalleerd is om WebSocket-push toe te voegen.

OnHTMXMessage

Gebeurtenis die wordt geactiveerd voor elk htmx-geïnitieerd HTTP-verzoek; uw handler geeft alleen de fragment-HTML terug die moet worden vervangen.

BroadcastFragment

Verstuurt een out-of-band htmx-payload gelijktijdig naar elke momenteel verbonden WebSocket-client.

HandleRequest

Aangeroepen door de hostserver voor elk verzoek; identificeert htmx-headers en stuurt naar OnHTMXMessage of geeft door.

hx-swap-oob

Het out-of-band-wisselattribuut van htmx: de fragment-id moet overeenkomen met de doel-element-id op de pagina.

Thread-veiligheid

BroadcastFragment is thread-veilig; roep het aan vanuit achtergrondtimers, push-threads of gebeurtenis-handlers zonder vergrendeling.

Auth

Wijs een TsgcHTMLAuth toe aan Auth en de engine past de sessie, de CSRF-controle en de login- en rolregels van de routes toe op elk verzoek. MessageSession geeft de sessie van een WebSocket-verbinding terug.

SSE

SSE.Enabled serveert de eventstream, en met een Template.Transport van htSSE of htAuto kan een pagina haar fragmenten via Server-Sent Events ontvangen. PushFragment en BroadcastFragment blijven hetzelfde.

DispatchDirect

Voert een verzoek zonder socket door de router en de engine, en zo roepen de tests van je pagina's ze aan.

Blijf verkennen

Online helpVolledige API-referentie en gebruikshandleiding voor dit onderdeel.
Alle sgcHTML-componentenBlader door de volledige functiematrix van 80+ componenten.
Download gratis proefversieDe proefversie van 30 dagen bevat de 60.HTML-demoprojecten.
PrijzenEnkelvoudige, team- en sitelicenties met volledige broncode.
De beste deal: All-AccessElk eSeGeCe-product, inclusief Premium-ondersteuning, vanaf €1,059 per jaar.
Bekijk de All-Access-prijzen

Klaar om te beginnen?

Download de gratis proefversie en begin met het bouwen van web-UI's in Delphi, C++ Builder en .NET.