TsgcWebSocketProxyServer › 事件 › OnSSLALPNSelect

OnSSLALPNSelect 事件

在与下游客户端进行启用了 ALPN 的握手期间触发,允许应用程序选择要协商的协议。

语法

property OnSSLALPNSelect: TsgcWSOnSSLALPNSelect;
// TsgcWSOnSSLALPNSelect = procedure(Sender: TObject; aProtocols: TStringList; var aProtocol: String) of object

默认值

—

备注

当下游客户端在 TLS 握手期间广播应用层协议协商时,触发 OnSSLALPNSelect,以便代理决定在下游端协商哪种协议。aProtocols 参数是一个包含客户端所广播名称的 TStringList(例如 "h2"、"http/1.1");将 aProtocol 赋值为服务器希望使用的协议。返回空字符串则保持默认行为,此时 TLS 层选择服务器支持的第一个广播协议。

示例


procedure OnSSLALPNSelect(Sender: TObject; aProtocols: TStringList;
  var aProtocol: String);
begin
  if aProtocols.IndexOf('h2') >= 0 then
    aProtocol := 'h2'
  else
    aProtocol := 'http/1.1';
end;

返回事件