TsgcWebSocketLoadBalancerServerMethoden › PushPromiseAddPreLoadLinks

PushPromiseAddPreLoadLinks Method

Registreert een HTTP/2 Server Push-regel die een set gerelateerde resources voorlaadt wanneer een overeenkomend verzoekpad door de load balancer 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 via HTTP/2 dit resource opvraagt, pusht de load balancer ook de geregistreerde koppelingen.
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 nieuw item toe aan de interne HTTP/2-push-promise-tabel die door de load balancer wordt gedeeld met zijn back-up HTTP-servers. Telkens wanneer een HTTP/2-client het pad opvraagt dat is opgegeven via aPathMatch, stuurt het knooppunt dat het verzoek afhandelt een PUSH_PROMISE-frame voor elke koppeling in aLinks vóór de hoofdreactie, zodat de client zijn cache kan vullen zonder extra roundtrips; zie HTTP/2 Server Push voor de volledige workflow. De koppelingslijst wordt gekopieerd, zodat de aanroeper de meegeleverde TStrings na de aanroep vrij kan vrijgeven. Push-promise wordt alleen gehonoreerd op HTTP/2-verbindingen die via ALPN zijn onderhandeld; HTTP/1.1-clients ontvangen de hoofdreactie zonder de beloofde resources. Roep PushPromiseRemovePreLoadLinks aan om de regel te verwijderen.

Voorbeeld


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

Terug naar methoden