TsgcWebSocketServer › Events › OnSSLALPNSelect
Geactiveerd tijdens een ALPN-ingeschakelde handshake zodat de toepassing kan kiezen welk protocol te onderhandelen.
property OnSSLALPNSelect: TsgcWSOnSSLALPNSelect;
// TsgcWSOnSSLALPNSelect = procedure(Sender: TObject; aProtocols: TStringList; var aProtocol: String) of object
—
Wanneer een client Application-Layer Protocol Negotiation adverteert tijdens de TLS-handshake, wordt OnSSLALPNSelect geactiveerd zodat de server kan beslissen welk protocol te onderhandelen. De parameter aProtocols is een TStringList met de namen die door de client worden geadverteerd (bijvoorbeeld "h2", "http/1.1"); wijs aProtocol toe aan het protocol dat de server wil gebruiken. Door een lege tekenreeks te retourneren blijft het standaardgedrag van kracht, waarbij de TLS-laag het eerste geadverteerde protocol kiest dat de server ondersteunt.
procedure OnSSLALPNSelect(Sender: TObject; aProtocols: TStringList;
var aProtocol: String);
begin
if aProtocols.IndexOf('h2') >= 0 then
aProtocol := 'h2'
else
aProtocol := 'http/1.1';
end;