TsgcWebSocketHTTPServerÉvénements › OnSSLALPNSelect

OnSSLALPNSelect Événement

Déclenché lors d'un handshake ALPN activé afin que l'application puisse choisir le protocole à négocier.

Syntaxe

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

Valeur par défaut

Remarques

Lorsqu'un client annonce la négociation de protocole de couche application (ALPN) lors du handshake TLS, OnSSLALPNSelect est déclenché afin que le serveur puisse décider quel protocole négocier. Le paramètre aProtocols est un TStringList contenant les noms annoncés par le client (par exemple « h2 », « http/1.1 ») ; assignez aProtocol à celui que le serveur souhaite utiliser. Lorsque HTTP2Options.Enabled est True, le composant retourne « h2 » par défaut afin que HTTP/2 soit négocié de manière transparente ; remplacez la sélection ici si le serveur souhaite forcer HTTP/1.1 ou un protocole personnalisé. Retourner une chaîne vide laisse le comportement par défaut en place.

Exemple


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

Retour aux événements