TsgcHTTP2ClientMethoden › GetFuture

GetFuture Methode

Voert een HTTP/2 GET uit op een achtergrondthread en retourneert een future die wordt opgelost naar de antwoordbody.

Syntaxis

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

Parameters

NaamTypeBeschrijving
aURLconst stringAbsolute URL van de op te halen resource.

Retourwaarde

Een IsgcFuture<string> die wordt opgelost naar de antwoordbody. Roep Await aan om te blokkeren totdat het antwoord arriveert, ThenProc om de body in een vervolgactie te verwerken, OnError om fouten af te handelen en Cancel om het verzoek af te breken.

Opmerkingen

GetFuture is de tegenhanger in future-stijl van het synchrone Get: het verzoek wordt uitgevoerd op een achtergrondthread en de methode keert onmiddellijk terug, zodat de aanroepende thread nooit wordt geblokkeerd. In tegenstelling tot ConnectAsync en de andere Async-varianten is er geen event-handler nodig: het antwoord wordt geleverd via de geretourneerde future. Het aanroepen van Cancel verbreekt de verbinding van de client, zodat een verzoek dat nog op zijn antwoord wacht wordt afgebroken in plaats van volledig te worden uitgevoerd; een afgebroken of mislukt verzoek wijst de future af met een uitzondering die aan OnError wordt geleverd (of opnieuw wordt gegooid door Await). Vereist Delphi 2010 of later (en C++Builder 2010 of later); het is niet beschikbaar in de .NET-editie.

Voorbeeld

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);

Terug naar methoden