TsgcWSHTTP2WebBrokerBridgeServer utilise TsgcWebSocketHTTPServer avec HTTP/2 protocole activé comme base serveur et est utile si vous souhaitez utiliser un seul serveur pour DataSnap, HTTP/2 et les connexions WebSocket.
TsgcWSHTTP2WebBrokerBridgeServer hérite de TsgcWebSocketHTTPServer, vous pouvez donc vous référer à ce serveur.
Suivez les étapes suivantes pour remplacer TIdHttpWebBrokerBridge par TsgcWSHTTP2WebBrokerBridgeServer :
1. Créez une nouvelle instance de TsgcWSHTTP2WebBrokerBridgeServer.
2. Remplacer tous les appels à TIdHttpWebBrokerBridge par TsgcWSHTTP2WebBrokerBridgeServer.
3. Pour gérer les connexions WebSocket, référez-vous à TsgcWebSocketHTTPServer.
Les composants Datasnap ne se trouvent que dans le dossier Source ; vous ne les trouverez pas dans les dossiers compilés car ces objets ne sont pas inclus dans le package sgcWebSockets, vous devez donc les créer à l'exécution.
Ajoutez simplement les fichiers requis à votre projet ou définissez votre chemin vers le dossier Source du package sgcWebSockets. Fichiers requis :
Si le projet utilise IdHTTPWebBrokerBridge, remplacez-le par sgcIdHTTPWebBrokerBridge (applicable uniquement pour l'édition Enterprise).
FServer := TsgcWSHTTP2WebBrokerBridgeServer.Create(Self);
FServer.OnCommandRequest := OnCommandRequestEvent;
FServer.OnCommandGet := OnCommandGetevent;
procedure OnCommandRequestEvent(AThread: TIdContext; ARequestInfo: TIdHTTPRequestInfo;
AResponseInfo: TIdHTTPResponseInfo; var aHandled: Boolean);
begin
if ARequestInfo.Document = '/test.html' then
aHandled := True;
end;
procedure OnCommandGetevent(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo;
AResponseInfo: TIdHTTPResponseInfo);
begin
if ARequestInfo.Document = '/test.html' then
begin
AResponseInfo.ResponseNo := 200;
AResponseInfo.ContentText := 'hello all';
end;
end;