TsgcWebSocketProxyServer › Events › OnSSLALPNSelect
Wordt geactiveerd tijdens een ALPN-handshake met een downstream-client, zodat de applicatie kan kiezen welk protocol er onderhandeld wordt.
property OnSSLALPNSelect: TsgcWSOnSSLALPNSelect;
// TsgcWSOnSSLALPNSelect = procedure(Sender: TObject; aProtocols: TStringList; var aProtocol: String) of object
—
Wanneer een downstream-client Application-Layer Protocol Negotiation adverteert tijdens de TLS-handshake, wordt OnSSLALPNSelect geactiveerd zodat de proxy kan beslissen welk protocol op de downstream-leg wordt onderhandeld. 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. Het retourneren van een lege string laat het standaardgedrag op zijn plaats, 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;