TsgcWSServer_HTTPAPI_WebBrokerBridge

TsgcWSServer_HTTPAPI_WebBrokerBridge verwendet TsgcWebSocketServer_HTTPAPI mit aktiviertem HTTP/2-Protokoll als Server-Basis und ist nützlich, wenn Sie einen einzelnen Server für DataSnap-, HTTP/2- und WebSocket-Verbindungen verwenden möchten.

 

TsgcWSServer_HTTPAPI_WebBrokerBridge erbt von TsgcWebSocketServer_HTTPAPI, sodass Sie auf diesen Server verweisen können.

 

Befolgen Sie die nächsten Schritte, um TIdHttpWebBrokerBridge durch TsgcWSServer_HTTPAPI_WebBrokerBridge zu ersetzen:

 

1. Erstellen Sie eine neue Instanz von TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

2. Ersetzen Sie alle Aufrufe von TIdHttpWebBrokerBridge durch TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

3. Um WebSocket-Verbindungen zu behandeln, beziehen Sie sich einfach auf TsgcWSServer_HTTPAPI_WebBrokerBridge.

 

Konfiguration

Die Datasnap-Komponenten befinden sich nur im Source-Ordner, Sie finden sie nicht in den kompilierten Ordnern, da diese Objekte nicht im sgcWebSockets-Paket enthalten sind, sodass Sie sie zur Laufzeit erstellen müssen.

Fügen Sie einfach die erforderlichen Dateien zu Ihrem Projekt hinzu oder setzen Sie Ihren Pfad auf den Source-Ordner des sgcWebSockets-Package. Erforderliche Dateien:

 

 

Wenn das Projekt IdHTTPWebBrokerBridge verwendet, wechseln Sie zu sgcIdHTTPWebBrokerBridge (dies gilt nur für die Enterprise Edition).

Ereignisse


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;