TsgcWebSocketHTTPServerMétodos › PushPromiseAddPreLoadLinks

PushPromiseAddPreLoadLinks Método

Registra una regla de Server Push HTTP/2 que precarga un conjunto de recursos relacionados siempre que se sirva una ruta de solicitud coincidente.

Sintaxis

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

Parámetros

NombreTipoDescripción
aPathMatchconst StringRuta de solicitud que desencadena el envío push, por ejemplo /index.html. Cuando un cliente solicita este recurso a través de HTTP/2, el servidor también envía por push los enlaces registrados para él.
aLinksconst TStringsLista de rutas de recursos (una por línea) que se enviarán junto con la solicitud coincidente, como hojas de estilo, scripts o imágenes referenciadas por el documento principal.

Observaciones

PushPromiseAddPreLoadLinks añade una nueva entrada a la tabla interna de push-promise de HTTP/2. Cuando un cliente HTTP/2 solicita la ruta indicada por aPathMatch, el servidor emite una trama PUSH_PROMISE para cada enlace en aLinks antes de la respuesta principal, para que el cliente pueda llenar su caché sin emitir viajes de ida y vuelta adicionales; consulte HTTP/2 Server Push para el flujo de trabajo completo. La lista de enlaces se copia, por lo que el llamador puede liberar el TStrings suministrado tras la llamada. La promesa de push solo se respeta en conexiones HTTP/2 negociadas mediante ALPN; los clientes HTTP/1.1 reciben la respuesta principal sin los recursos prometidos. Llame a PushPromiseRemovePreLoadLinks para eliminar la regla.

Ejemplo


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

Volver a Métodos