TsgcHTTP2ClientMétodos › GetFuture

GetFuture Método

Ejecuta un GET HTTP/2 en un hilo en segundo plano y devuelve un future que se resuelve con el cuerpo de la respuesta.

Sintaxis

function GetFuture(const aURL: string): IsgcFuture<string>;

Parámetros

NombreTipoDescripción
aURLconst stringURL absoluta del recurso a recuperar.

Valor de Retorno

Un IsgcFuture<string> que se resuelve con el cuerpo de la respuesta. Llame a Await para bloquear hasta que llegue la respuesta, a ThenProc para consumir el cuerpo en una continuación, a OnError para gestionar los fallos y a Cancel para abortar la solicitud.

Observaciones

GetFuture es la contrapartida de estilo future del método síncrono Get: la solicitud se ejecuta en un hilo en segundo plano y el método retorna de inmediato, por lo que el hilo llamante nunca se bloquea. A diferencia de ConnectAsync y del resto de métodos Async, no se requiere ningún controlador de eventos: la respuesta se entrega a través del future devuelto. Llamar a Cancel desconecta el cliente, por lo que una solicitud que aún espera su respuesta se aborta en lugar de ejecutarse hasta el final; una solicitud abortada o fallida rechaza el future con una excepción entregada a OnError (o relanzada por Await). Requiere Delphi 2010 o posterior (y C++Builder 2010 o posterior); no está disponible en la edición .NET.

Ejemplo

oClient.GetFuture('https://www.esegece.com')
  .ThenProc(procedure(const aBody: string)
    begin
      WriteLn(aBody);
    end)
  .OnError(procedure(E: Exception)
    begin
      WriteLn('Request failed: ' + E.Message);
    end);

Volver a Métodos