TsgcHTTP2ClientMéthodes › GetFuture

GetFuture Méthode

Exécute un GET HTTP/2 dans un thread d'arrière-plan et renvoie un future qui se résout avec le corps de la réponse.

Syntaxe

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

Paramètres

NomTypeDescription
aURL const stringURL absolue de la ressource à récupérer.

Valeur de retour

Un IsgcFuture<string> qui se résout avec le corps de la réponse. Appelez Await pour bloquer jusqu'à l'arrivée de la réponse, ThenProc pour consommer le corps dans une continuation, OnError pour gérer les échecs et Cancel pour abandonner la requête.

Remarques

GetFuture est le pendant de style future de la méthode synchrone Get : la requête s'exécute dans un thread d'arrière-plan et la méthode retourne immédiatement, de sorte que le thread appelant n'est jamais bloqué. Contrairement à ConnectAsync et aux autres méthodes Async, aucun gestionnaire d'événements n'est requis : la réponse est délivrée via le future renvoyé. Appeler Cancel déconnecte le client, de sorte qu'une requête encore en attente de sa réponse est abandonnée au lieu de s'exécuter jusqu'au bout ; une requête abandonnée ou échouée rejette le future avec une exception délivrée à OnError (ou relancée par Await). Nécessite Delphi 2010 ou version ultérieure (et C++Builder 2010 ou version ultérieure) ; non disponible dans l'édition .NET.

Exemple

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

Retour aux méthodes