HttpRequest - Exemples

HttpRequest = class (TObject)Interface de HttpRequestExemples de HttpRequest
uses System.Net;

var r := HttpQuery.Request('GET', 'http://www.google.fr');

// ... here is your code that will be executed during
// the time the request is processed by the server ...

// when you finally need the result, check if request is complete
while not r.Completed do
   Sleep(10);

case r.StatusCode of
   0: raise Exception.Create('Connection error');
   200: begin
      PrintLn(r.Header['date']); // récupération d'un header de la réponse
      PrintLn(r.ContentType); // récupération du type de données de la réponse
      PrintLn(r.ContentData); // récupération des données brutes de la réponse
   end;
else
   raise Exception.Create('Error ' + r.StatusCode.ToString);
end;

Exemple d'un script qui effectue uniquement une requête dont on ne souhaite pas attendre la réponse, car elle est potentiellement lente.
NB : si le code de l'API est modifiable, il vaut mieux la transformer en une API externe rapide qui prend en charge le traitement et qui répond "OK" et une API interne lente qui effectue le traitement. Il est même possible de prévoir une API externe rapide qui indique l'avancement du traitement.

uses System.Net;

var r := HttpQuery.Request('GET', 'http://www.google.fr');
// leave some time to be sure the request will be really sent, before finishing the script execution, hence killing the query object
Sleep(100);