« Requêtes HTTP (tech) » : différence entre les versions
Aucun résumé des modifications |
|||
(12 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 4 : | Ligne 4 : | ||
===Propriétés=== | ===Propriétés=== | ||
{|class="wikitable" | {|class="wikitable" | ||
|- | |||
|[[AuthenUserName (http)|AuthenUserName]] | |||
|Nom d'utilisateur pour un accès authentifié | |||
|- | |||
|[[AuthenPassword (http)|AuthenPassword]] | |||
|Mot de passe de l'utilisateur pour un accès authentifié | |||
|- | |- | ||
|[[ProxyHost (http)|ProxyHost]] | |[[ProxyHost (http)|ProxyHost]] | ||
Ligne 31 : | Ligne 37 : | ||
|[[Url (http)|Url]] | |[[Url (http)|Url]] | ||
|Url de la requête | |Url de la requête | ||
|- | |- | ||
|[[TimeOut (http)|TimeOut]] | |[[TimeOut (http)|TimeOut]] | ||
|Délai d'attente de la réponse | |Délai d'attente de la réponse en ms. (-1 pour attente infinie) | ||
|- | |- | ||
|[[ResponseFileName (http)|ResponseFileName]] | |[[ResponseFileName (http)|ResponseFileName]] | ||
Ligne 43 : | Ligne 46 : | ||
|[[ResponseStr (http)|ResponseStr]] | |[[ResponseStr (http)|ResponseStr]] | ||
|Chaîne contenant la réponse (GET) | |Chaîne contenant la réponse (GET) | ||
|- | |||
|[[HandleRedirects (http)|HandleRedirects]] | |||
|Accepte les redirections | |||
|- | |||
|[[RedirectMaximum (http)|RedirectMaximum]] | |||
|Nombre maximum de redirections | |||
|- | |||
|[[SSL (http)|SSL]] | |||
|Accepte SSL | |||
|- | |||
|[[CertSerial (http)|CertSerial]] | |||
|Défini le numéro de série du certificat SSL a utiliser | |||
|- | |||
|[[CertIssuer (http)|CertIssuer]] | |||
|Défini l'émetteur du série du certificat SSL a utiliser | |||
|- | |||
|[[AcceptCookies (http)|AcceptCookies]] | |||
|Accepte les cookies | |||
|- | |||
|[[RequestInfos (http)|RequestInfos]] | |||
|Informations de l'entête de requête. | |||
|- | |||
|[[ResponseInfos (http)|ResponseInfos]] | |||
|Informations de l'entête de réponse. | |||
|- | |||
|[[ErrorCode (http)|ErrorCode]] | |||
|Code d'erreur. | |||
|- | |||
|[[ErrorText (http)|ErrorText]] | |||
|Texte de l'erreur. | |||
|- | |||
|[[ErrorContent (http)|ErrorContent]] | |||
|Contenu de l'erreur. | |||
|- | |||
|[[ErrorInfos (http)|ErrorInfos]] | |||
|Informations sur l'erreur. | |||
|- | |||
|[[RequestCustomHeader (http)|RequestCustomHeader]] | |||
|Accès aux customs headers de la requête.(7.10) | |||
|- | |||
|[[RequestAccept (http)|RequestAccept]] | |||
|Accès à la propriété Accept de la requête.(7.10) | |||
|- | |||
|[[ServiceProvider (http)|ServiceProvider (9.20)]] | |||
|Nom du fournisseur de donnée | |||
|} | |} | ||
Ligne 54 : | Ligne 102 : | ||
|Charge un document XML avec la réponse de la requête. | |Charge un document XML avec la réponse de la requête. | ||
|} | |} | ||
===Exemples=== | |||
'''Utilisation de GET''' | |||
<source lang='delphi'> | |||
//Procedure TestHttp; | |||
var http:THttpClient; | |||
begin | |||
http := ThttpClient.Create(nil); | |||
http.URL := 'http://www.google.fr'; | |||
try | |||
http.Execute; | |||
ShowMessage(http.ResponseStr); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
'''Utilisation sur un accès authentifié''' | |||
<source lang='delphi'> | |||
//Procedure TestHttp; | |||
var http:THttpClient; | |||
begin | |||
http := ThttpClient.Create(nil); | |||
http.URL := 'http://localhost/secure/test.html'; | |||
http.AuthenUserName := 'sage'; | |||
http.AuthenPassword := 'sage'; | |||
try | |||
http.Execute; | |||
ShowMessage(http.ResponseStr); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
'''Utilisation sur un accès authentifié, informations dans l'URL''' | |||
<source lang='delphi'> | |||
//Procedure TestHttp; | |||
var http:THttpClient; | |||
begin | |||
http := ThttpClient.Create(nil); | |||
http.URL := 'http://sage:sage@localhost/secure/test.html'; | |||
try | |||
http.Execute; | |||
ShowMessage(http.ResponseStr); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
'''Utilisation sur un port particulier''' | |||
<source lang='delphi'> | |||
//Procedure TestHttp; | |||
var http:THttpClient; | |||
begin | |||
http := ThttpClient.Create(nil); | |||
http.URL := 'http://localhost:8080/test.html'; | |||
try | |||
http.Execute; | |||
ShowMessage(http.ResponseStr); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
'''Chargement d'un document XML''' | |||
<source lang='delphi'> | |||
var http:THttpClient; doc:TxmlDocument; | |||
begin | |||
doc := TxmlDocument.Create(nil); | |||
http := ThttpClient.Create(nil); | |||
http.URL := 'http://www.playr.ie/ns0.wsdl'; | |||
try | |||
http.Execute; | |||
http.LoadXMLDocument(doc); | |||
ShowMessage(doc.SaveToString); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
'''Utilisation de POST''' | |||
<source lang='delphi'> | |||
var http:THttpClient; docSend,docReceived:TxmlDocument; itm : TXmlItem; | |||
begin | |||
docSend := TxmlDocument.Create(nil); | |||
docReceived := TxmlDocument.Create(nil); | |||
itm := TXmlItem.Create(docSend); | |||
itm.ItemName := 'document'; | |||
itm := TXmlItem.Create(itm); | |||
itm.ItemName := 'message'; | |||
itm.Text := 'test'; | |||
http := ThttpClient.Create(nil); | |||
http.Method := hrmPost; | |||
http.PostDataStr := docSend.SaveToString; | |||
http.PostContentType := 'text/xml'; | |||
http.URL := 'http://<monServeur>/service_test_wsdl/server/rpc.l1000/info.services'; | |||
try | |||
http.Execute; | |||
http.LoadXMLDocument(docReceived); | |||
ShowMessage(docReceived.SaveToString); | |||
except | |||
ShowMessage(http.ErrorText); | |||
end; | |||
end; | |||
</source> | |||
{{Footer|Code métier}} | {{Footer|Code métier}} | ||
[[category:Objets techniques]] | [[category:Objets techniques]] | ||
[[category:Objets itérateurs]] | [[category:Objets itérateurs]] |
Dernière version du 9 juillet 2021 à 08:40
Introduction
Les requêtes HTTP sont des objets techniques permettant d'exécuter des requêtes HTTP.
Propriétés
AuthenUserName | Nom d'utilisateur pour un accès authentifié |
AuthenPassword | Mot de passe de l'utilisateur pour un accès authentifié |
ProxyHost | Nom de serveur du proxy |
ProxyPort | Numéro de port du proxy |
ProxyUserName | Nom d'utilisateur du proxy |
ProxyPassword | Mot de passe de l'utilisateur du proxy |
PostDataStr | Données à poster |
PostDataFile | Nom de fichier contenant les données à poster. |
PostContentType | Type de contenu des données à poster |
Method | Type de méthode http |
Url | Url de la requête |
TimeOut | Délai d'attente de la réponse en ms. (-1 pour attente infinie) |
ResponseFileName | Nom de fichier recevant la réponse (GET) |
ResponseStr | Chaîne contenant la réponse (GET) |
HandleRedirects | Accepte les redirections |
RedirectMaximum | Nombre maximum de redirections |
SSL | Accepte SSL |
CertSerial | Défini le numéro de série du certificat SSL a utiliser |
CertIssuer | Défini l'émetteur du série du certificat SSL a utiliser |
AcceptCookies | Accepte les cookies |
RequestInfos | Informations de l'entête de requête. |
ResponseInfos | Informations de l'entête de réponse. |
ErrorCode | Code d'erreur. |
ErrorText | Texte de l'erreur. |
ErrorContent | Contenu de l'erreur. |
ErrorInfos | Informations sur l'erreur. |
RequestCustomHeader | Accès aux customs headers de la requête.(7.10) |
RequestAccept | Accès à la propriété Accept de la requête.(7.10) |
ServiceProvider (9.20) | Nom du fournisseur de donnée |
Opérations
Execute | Exécute la requête |
LoadXMLDocument | Charge un document XML avec la réponse de la requête. |
Exemples
Utilisation de GET <source lang='delphi'> //Procedure TestHttp; var http:THttpClient; begin
http := ThttpClient.Create(nil); http.URL := 'http://www.google.fr'; try http.Execute; ShowMessage(http.ResponseStr); except ShowMessage(http.ErrorText); end;
end; </source>
Utilisation sur un accès authentifié <source lang='delphi'> //Procedure TestHttp; var http:THttpClient; begin
http := ThttpClient.Create(nil); http.URL := 'http://localhost/secure/test.html'; http.AuthenUserName := 'sage'; http.AuthenPassword := 'sage'; try http.Execute; ShowMessage(http.ResponseStr); except ShowMessage(http.ErrorText); end;
end; </source>
Utilisation sur un accès authentifié, informations dans l'URL <source lang='delphi'> //Procedure TestHttp; var http:THttpClient; begin
http := ThttpClient.Create(nil); http.URL := 'http://sage:sage@localhost/secure/test.html'; try http.Execute; ShowMessage(http.ResponseStr); except ShowMessage(http.ErrorText); end;
end; </source>
Utilisation sur un port particulier <source lang='delphi'> //Procedure TestHttp; var http:THttpClient; begin
http := ThttpClient.Create(nil); http.URL := 'http://localhost:8080/test.html'; try http.Execute; ShowMessage(http.ResponseStr); except ShowMessage(http.ErrorText); end;
end; </source>
Chargement d'un document XML <source lang='delphi'> var http:THttpClient; doc:TxmlDocument; begin
doc := TxmlDocument.Create(nil); http := ThttpClient.Create(nil); http.URL := 'http://www.playr.ie/ns0.wsdl'; try http.Execute; http.LoadXMLDocument(doc); ShowMessage(doc.SaveToString); except ShowMessage(http.ErrorText); end;
end; </source>
Utilisation de POST <source lang='delphi'> var http:THttpClient; docSend,docReceived:TxmlDocument; itm : TXmlItem; begin
docSend := TxmlDocument.Create(nil); docReceived := TxmlDocument.Create(nil);
itm := TXmlItem.Create(docSend); itm.ItemName := 'document'; itm := TXmlItem.Create(itm); itm.ItemName := 'message'; itm.Text := 'test';
http := ThttpClient.Create(nil); http.Method := hrmPost; http.PostDataStr := docSend.SaveToString; http.PostContentType := 'text/xml'; http.URL := 'http://<monServeur>/service_test_wsdl/server/rpc.l1000/info.services'; try http.Execute; http.LoadXMLDocument(docReceived); ShowMessage(docReceived.SaveToString); except ShowMessage(http.ErrorText); end;
end; </source>
{{#if:Code métier|
{{#if:Code métier|— Code métier |}} — Développement DSM —
|
{{#if:|— [[{{{1}}}]] |}} — Développement DSM —
}}