TsgcWSServer_HTTPAPI_WebBrokerBridge

TsgcWSServer_HTTPAPI_WebBrokerBridge gebruik TsgcWebSocketServer_HTTPAPI met HTTP/2-protocol ingeschakeld als serverbasis en is nuttig als u één server wilt gebruiken voor DataSnap-, HTTP/2- en WebSocket-verbindingen.

 

TsgcWSServer_HTTPAPI_WebBrokerBridge erft over van TsgcWebSocketServer_HTTPAPI, zodat u naar deze server kunt verwijzen.

 

Volg de volgende stappen om TIdHttpWebBrokerBridge te vervangen door TsgcWSServer_HTTPAPI_WebBrokerBridge:

 

1. Maak een nieuw exemplaar aan van TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

2. Vervang alle aanroepen naar TIdHttpWebBrokerBridge door TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

3. Voor het verwerken van WebSocket-verbindingen verwijst u naar TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

Configuratie

De Datasnap-componenten bevinden zich alleen in de map Source; u vindt ze niet in de gecompileerde mappen omdat deze objecten niet zijn opgenomen in het sgcWebSockets-pakket, dus u moet ze tijdens runtime aanmaken.

Voeg gewoon de vereiste bestanden toe aan uw project of stel uw pad in op de Source-map van het sgcWebSockets-pakket. Vereiste bestanden:

 

 

Als het project gebruikmaakt van IdHTTPWebBrokerBridge, wijzig dit dan naar sgcIdHTTPWebBrokerBridge (dit geldt alleen voor de Enterprise Edition).

Gebeurtenissen


FServer := TsgcWSServer_HTTPAPI_WebBrokerBridge.Create(Self);
FServer.OnCommandRequest := OnCommandRequestEvent;
FServer.OnMessage := OnWebSocketMessage;
  
procedure OnCommandRequestEvent(aConnection : TsgcWSConnection_HTTPAPI; 
  const aRequestInfo: THttpServerRequest; var aResponseInfo: THttpServerResponse; var aHandled: Boolean);
begin
  if ARequestInfo.Document = '/test.html' then
  begin
    AResponseInfo.ResponseNo := 200;
    AResponseInfo.ContentText := '... body ...';
    aHandled := True;
  end;
end;
procedure OnWebSocketMessage(aConnection: TsgcWSConnection; const aText: string);
begin
  aConnection.WriteData(aText);
end;