TsgcWebSocketHTTPServerMéthodes › PushPromiseAddPreLoadLinks

PushPromiseAddPreLoadLinks Méthode

Enregistre une règle de Server Push HTTP/2 qui précharge un ensemble de ressources liées chaque fois qu'un chemin de requête correspondant est servi.

Syntaxe

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

Paramètres

NomTypeDescription
aPathMatch const String Chemin de requête qui déclenche le push, par exemple /index.html. Lorsqu'un client demande cette ressource via HTTP/2, le serveur pousse également les liens qui y sont enregistrés.
aLinksconst TStringsListe des chemins de ressources (un par ligne) qui seront transmis en même temps que la requête correspondante, tels que les feuilles de style, les scripts ou les images référencés par le document principal.

Remarques

PushPromiseAddPreLoadLinks ajoute une nouvelle entrée à la table de push-promise HTTP/2 interne. Chaque fois qu'un client HTTP/2 demande le chemin indiqué par aPathMatch, le serveur émet une trame PUSH_PROMISE pour chaque lien dans aLinks avant la réponse principale afin que le client puisse remplir son cache sans émettre de allers-retours supplémentaires ; voir HTTP/2 Server Push pour le flux de travail complet. La liste de liens est copiée, donc l'appelant est libre de libérer le TStrings fourni après l'appel. Le push promise n'est honoré que sur les connexions HTTP/2 négociées via ALPN ; les clients HTTP/1.1 reçoivent la réponse principale sans les ressources promises. Appelez PushPromiseRemovePreLoadLinks pour supprimer la règle.

Exemple


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

Retour aux méthodes