TsgcWebSocketServer › Eventos › OnSSLALPNSelect
Se activa durante un handshake con ALPN habilitado para que la aplicación pueda elegir qué protocolo negociar.
property OnSSLALPNSelect: TsgcWSOnSSLALPNSelect;
// TsgcWSOnSSLALPNSelect = procedure(Sender: TObject; aProtocols: TStringList; var aProtocol: String) of object
—
Cuando un cliente anuncia la Negociación de Protocolo de Capa de Aplicación durante el handshake TLS, se genera OnSSLALPNSelect para que el servidor pueda decidir qué protocolo negociar. El parámetro aProtocols es un TStringList con los nombres anunciados por el cliente (por ejemplo, "h2", "http/1.1"); asigne aProtocol al que el servidor desee utilizar. Si se devuelve una cadena vacía, se mantiene el comportamiento predeterminado, en cuyo caso la capa TLS selecciona el primer protocolo anunciado que el servidor admite.
procedure OnSSLALPNSelect(Sender: TObject; aProtocols: TStringList;
var aProtocol: String);
begin
if aProtocols.IndexOf('h2') >= 0 then
aProtocol := 'h2'
else
aProtocol := 'http/1.1';
end;