DataSnap — HTTP.sys WebSocket + HTTP/2
TsgcWSServer_HTTPAPI_WebBrokerBridge — kernel-mode (http.sys) WebBroker / DataSnap host with WebSocket and HTTP/2 transports.
TsgcWSServer_HTTPAPI_WebBrokerBridge — kernel-mode (http.sys) WebBroker / DataSnap host with WebSocket and HTTP/2 transports.
TsgcWSServer_HTTPAPI_WebBrokerBridge use TsgcWebSocketServer_HTTPAPI with HTTP/2 protocol enabled as server base and is useful if you want to use a single server for DataSnap, HTTP/2 and WebSocket connections.
TsgcWSServer_HTTPAPI_WebBrokerBridge| Standards & specs | WebSocket Protocol — RFC 6455 · HTTP/2 — RFC 9113 |
| Component class | TsgcWSServer_HTTPAPI_WebBrokerBridge (unit sgcWebSocket_HTTPAPI_WebBrokerBridge) |
| Frameworks | VCL, FireMonkey, Lazarus / FPC |
| Platforms | Windows, macOS, Linux, iOS, Android |
The principal published / public properties used to configure and drive the component. Consult the online help for the full list.
APIKeyManager | Published or public property used to configure or query the component. |
DefaultPort | Published or public property used to configure or query the component. |
BindingOptions | Published or public property used to configure or query the component. |
SSLOptions | Published or public property used to configure or query the component. |
OnCommandRequest | Published or public property used to configure or query the component. |
Timeouts | Published or public property used to configure or query the component. |
FineTune | Published or public property used to configure or query the component. |
Asynchronous | Published or public property used to configure or query the component. |
MaxConnections | Published or public property used to configure or query the component. |
MaxBandwidth | Published or public property used to configure or query the component. |
The principal public methods exposed by the component.
Start() | Public procedure exposed by the component. |
Stop() | Public procedure exposed by the component. |
ReStart() | Public procedure exposed by the component. |
ShareList() | Public function exposed by the component. |
UnShareList() | Public procedure exposed by the component. |
LockList() | Public function exposed by the component. |
UnLockList() | Public procedure exposed by the component. |
RegisterWebModuleClass() | Public procedure exposed by the component. |
Drop the component on a form, configure the properties below and activate it. The snippet that follows shows the typical Load Balancer configuration sourced from the online help.
procedure TWebModule1.WebModuleBeforeDispatch(Sender: TObject; Request: TWebRequest; Response: TWebResponse; var Handled: Boolean); begin Response.SetCustomHeader('Access-Control-Allow-Origin','*'); if Trim(Request.GetFieldByName('Access-Control-Request-Headers')) <> '' then begin Response.SetCustomHeader('Access-Control-Allow-Headers', Request.GetFieldByName('Access-Control-Request-Headers')); Handled := True; end; if FServerFunctionInvokerAction <> nil then FServerFunctionInvokerAction.Enabled := AllowServerFunctionInvoker; end;
void __fastcall TWebModule1::WebModuleBeforeDispatch(TObject *Sender, TWebRequest *Request, TWebResponse *Response, bool &Handled) { Response->SetCustomHeader("Access-Control-Allow-Origin", "*"); if (Trim(Request->GetFieldByName("Access-Control-Request-Headers")) != "") { Response->SetCustomHeader("Access-Control-Allow-Headers", Request->GetFieldByName("Access-Control-Request-Headers")); Handled = true; } if (FServerFunctionInvokerAction != nullptr) { FServerFunctionInvokerAction->Enabled = AllowServerFunctionInvoker; } }
void WebModuleBeforeDispatch(object Sender, TWebRequest Request, TWebResponse Response, ref bool Handled) { Response.SetCustomHeader("Access-Control-Allow-Origin", "*"); if (Request.GetFieldByName("Access-Control-Request-Headers").Trim() != "") { Response.SetCustomHeader("Access-Control-Allow-Headers", Request.GetFieldByName("Access-Control-Request-Headers")); Handled = true; } if (FServerFunctionInvokerAction != null) { FServerFunctionInvokerAction.Enabled = AllowServerFunctionInvoker; } }
Every external claim links back to a primary source. The online-help references decode the canonical deep-link the company maintains for this component.
Demos\40.DataSnap