TsgcWSHTTP2WebBrokerBridgeServer usa TsgcWebSocketHTTPServer con el protocolo HTTP/2 habilitado como base del servidor y es útil si desea usar un único servidor para conexiones DataSnap, HTTP/2 y WebSocket.
TsgcWSHTTP2WebBrokerBridgeServer hereda de TsgcWebSocketHTTPServer, por lo que puede hacer referencia a este servidor.
Siga los siguientes pasos para reemplazar TIdHttpWebBrokerBridge por TsgcWSHTTP2WebBrokerBridgeServer:
1. Cree una nueva instancia de TsgcWSHTTP2WebBrokerBridgeServer.
2. Reemplace todas las llamadas a TIdHttpWebBrokerBridge por TsgcWSHTTP2WebBrokerBridgeServer.
3. Para gestionar las conexiones WebSocket, consulte TsgcWebSocketHTTPServer.
Los componentes Datasnap se encuentran únicamente en la carpeta Source; no los encontrará en las carpetas compiladas porque estos objetos no están incluidos en el paquete sgcWebSockets, por lo que debe crearlos en tiempo de ejecución.
Simplemente añada los archivos necesarios a su proyecto o establezca la ruta a la carpeta Source del paquete sgcWebSockets. Archivos necesarios:
Si el proyecto utiliza IdHTTPWebBrokerBridge, cámbielo por sgcIdHTTPWebBrokerBridge (esto solo aplica para la edición 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;