TsgcWSHTTP2WebBrokerBridgeServerは、サーバーベースとしてHTTP/2 プロトコルを有効にしたTsgcWebSocketHTTPServer を 使用します。DataSnap、HTTP/2、WebSocket接続に単一のサーバーを使用したい場合に便利です。
TsgcWSHTTP2WebBrokerBridgeServer は TsgcWebSocketHTTPServer を継承しているため、このサーバーを参照できます。
TIdHttpWebBrokerBridge を TsgcWSHTTP2WebBrokerBridgeServer に置き換えるには、以下のステップに従ってください。
1. TsgcWSHTTP2WebBrokerBridgeServer の新しいインスタンスを作成します。
2. TIdHttpWebBrokerBridge へのすべての呼び出しを TsgcWSHTTP2WebBrokerBridgeServer に置き換えます。
3. WebSocket 接続を処理するには TsgcWebSocketHTTPServer を参照してください。
Datasnap コンポーネントはソースフォルダーにのみ配置されています。これらのオブジェクトは sgcWebSockets パッケージに含まれていないため、コンパイル済みフォルダーには見つかりません。実行時に作成する必要があります。
必要なファイルをプロジェクトに追加するか、sgcWebSocketsパッケージのSourceフォルダーへのパスを設定するだけです。必要なファイル:
プロジェクトが IdHTTPWebBrokerBridge を使用している場合は sgcIdHTTPWebBrokerBridge に変更します (Enterprise Edition のみ適用)。
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;