TsgcWebSocketHTTPServerZdarzenia › OnSSLALPNSelect

OnSSLALPNSelect Zdarzenie

Wywoływane podczas uzgadniania z włączonym ALPN, aby aplikacja mogła wybrać protokół do negocjacji.

Składnia

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

Wartość domyślna

Uwagi

Gdy klient anonsuje Application-Layer Protocol Negotiation podczas uzgadniania TLS, zdarzenie OnSSLALPNSelect jest wywoływane, umożliwiając serwerowi wybór protokołu do negocjacji. Parametr aProtocols to TStringList z nazwami anonsowanymi przez klienta (np. „h2", „http/1.1"); przypisz do aProtocol ten, który serwer chce wybrać. Gdy HTTP2Options.Enabled ma wartość True, komponent domyślnie zwraca „h2", więc HTTP/2 jest negocjowane transparentnie; można tu zmienić wybór, jeśli serwer chce wymusić HTTP/1.1 lub niestandardowy protokół. Zwrócenie pustego ciągu pozostawia domyślne zachowanie.

Przykład


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

Powrót do Zdarzeń