TsgcWebSocketHTTPServerMethoden › PushPromiseAddPreLoadLinks

PushPromiseAddPreLoadLinks Method

Registreert een HTTP/2 Server Push-regel die een set gerelateerde resources voorlaadt wanneer een overeenkomend verzoekpad wordt bediend.

Syntaxis

procedure PushPromiseAddPreLoadLinks(const aPathMatch: String; const aLinks: TStrings);

Parameters

NaamTypeBeschrijving
aPathMatchconst StringVerzoekpad dat de push activeert, bijvoorbeeld /index.html. Wanneer een client deze resource via HTTP/2 opvraagt, pusht de server ook de gekoppelde links.
aLinksconst TStringsLijst van resourcepaden (één per regel) die naast het overeenkomende verzoek worden gepusht, zoals stylesheets, scripts of afbeeldingen waarnaar het primaire document verwijst.

Opmerkingen

PushPromiseAddPreLoadLinks voegt een nieuwe vermelding toe aan de interne HTTP/2 push-promise-tabel. Wanneer een HTTP/2-client het pad opvraagt dat wordt opgegeven door aPathMatch, verstuurt de server een PUSH_PROMISE-frame voor elke link in aLinks vóór het hoofdantwoord, zodat de client zijn cache kan vullen zonder extra round-trips; zie HTTP/2 Server Push voor de volledige workflow. De linklijst wordt gekopieerd, zodat de aanroeper de opgegeven TStrings na de aanroep vrij kan geven. Push promise wordt alleen gehonoreerd op HTTP/2-verbindingen onderhandeld via ALPN; HTTP/1.1-clients ontvangen het hoofdantwoord zonder de beloofde resources. Roep PushPromiseRemovePreLoadLinks aan om de regel te verwijderen.

Voorbeeld


oServer := TsgcWebSocketHTTPServer.Create(nil);
oLinks := TStringList.Create;
try
  oLinks.Add('/styles.css');
  oServer.PushPromiseAddPreLoadLinks('/index.html', oLinks);
finally
  oLinks.Free;
end;

Terug naar methoden