PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Erreur de sécurité dans une transaction sécurisée
  • Récupération
  • Accéder à une URL protégée par mot de passe
  • Utilisation d'un proxy
  • En-têtes d'authentification
  • Fonctionnalité d'application requise
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Envoie un formulaire HTTP. Ce formulaire a été créé grâce à la fonction HTTPCréeFormulaire.
Versions 16 et supérieures
WEBDEV - Code ServeurPHP Cette fonction est désormais disponible pour les sites PHP.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
Nouveauté 16
WEBDEV - Code ServeurPHP Cette fonction est désormais disponible pour les sites PHP.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WEBDEV - Code ServeurPHP Cette fonction est désormais disponible pour les sites PHP.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
Versions 18 et supérieures
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad, mais uniquement en HTTP, pas en HTTPS.
Nouveauté 18
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad, mais uniquement en HTTP, pas en HTTPS.
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad, mais uniquement en HTTP, pas en HTTPS.
Versions 19 et supérieures
WINDEV MobileWidget Android Cette fonction est désormais disponible en mode Widget Android.
WINDEV MobileAndroid Cette fonction est désormais disponible pour les applications Android.
Nouveauté 19
WINDEV MobileWidget Android Cette fonction est désormais disponible en mode Widget Android.
WINDEV MobileAndroid Cette fonction est désormais disponible pour les applications Android.
WINDEV MobileWidget Android Cette fonction est désormais disponible en mode Widget Android.
WINDEV MobileAndroid Cette fonction est désormais disponible pour les applications Android.
Versions 20 et supérieures
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad en HTTPS.
Linux Cette fonction est désormais disponible pour les applications et sites sous Linux en HTTPS.
Nouveauté 20
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad en HTTPS.
Linux Cette fonction est désormais disponible pour les applications et sites sous Linux en HTTPS.
WINDEV MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad en HTTPS.
Linux Cette fonction est désormais disponible pour les applications et sites sous Linux en HTTPS.
HTTPCréeFormulaire("FORM")
HTTPAjouteParamètre("FORM", "Prix", "3400")
...
HTTPEnvoieFormulaire("FORM", "www.monsite.fr")
Syntaxe

Syntaxe complète Masquer les détails

<Résultat> = HTTPEnvoieFormulaire(<Nom du formulaire> , <URL à contacter> [, <Méthode HTTP> [, <Agent utilisateur> [, <Entête HTTP supplémentaire> [, <Type du formulaire> [, <Nom User> [, <Mot de passe>]]]]]])
<Résultat> : Booléen
  • Vrai si le formulaire HTTP a été envoyé,
  • Faux en cas d'erreur. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Nom du formulaire> : Chaîne de caractères (entre guillemets)
Nom du formulaire HTTP à envoyer.
<URL à contacter> : Chaîne de caractères (entre guillemets)
Adresse du serveur à contacter sous forme d'adresse URL.
Ce paramètre peut contenir le numéro de port pour la connexion sur le serveur. La valeur par défaut est 80 (correspond à un serveur de pages Web). Pour spécifier un numéro de port, utilisez le format : "<URL du serveur>:<N° du port>".
Par exemple : http://www.pcsoft.fr:80.
Remarque : Pour réaliser une transaction sécurisée, l'URL doit commencer par la chaîne "https://".
LinuxiPhone/iPad Les transactions sécurisées ne sont pas gérées.
<Méthode HTTP> : Constante optionnelle de type Entier
Méthode HTTP utilisée :
Versions 19 et supérieures
httpCopy
Nouveauté 19
httpCopy
httpCopy
Méthode COPY
AndroidWidget AndroidJava Cette constante n'est pas disponible.
Versions 22 et supérieures
AndroidWidget Android Cette constante est désormais disponible.
Nouveauté 22
AndroidWidget Android Cette constante est désormais disponible.
AndroidWidget Android Cette constante est désormais disponible.
Java Cette constante n'est pas disponible.
httpDeleteMéthode DELETE
httpGetMéthode GET
Versions 19 et supérieures
httpHead
Nouveauté 19
httpHead
httpHead
Méthode HEAD
AndroidWidget AndroidJava Cette constante n'est pas disponible.
Versions 22 et supérieures
AndroidWidget Android Cette constante est désormais disponible.
Nouveauté 22
AndroidWidget Android Cette constante est désormais disponible.
AndroidWidget Android Cette constante est désormais disponible.
Java Cette constante n'est pas disponible.
Versions 19 et supérieures
httpPatch
Nouveauté 19
httpPatch
httpPatch
Méthode PATCH
AndroidWidget AndroidJava Cette constante n'est pas disponible.
Versions 22 et supérieures
AndroidWidget Android Cette constante est désormais disponible.
Nouveauté 22
AndroidWidget Android Cette constante est désormais disponible.
AndroidWidget Android Cette constante est désormais disponible.
Java Cette constante n'est pas disponible.
httpPost
(Valeur par défaut)
Méthode POST
httpPutMéthode PUT
<Agent utilisateur> : Chaîne de caractères (entre guillemets) optionnelle
Identifie le client. Par défaut, la valeur "PC SOFT Framework" est envoyée.
Le contenu de la réponse peut dépendre de l'agent utilisateur. Dans ce cas, consultez la documentation de l'agent utilisateur pour plus de détails.
Windows Mobile Identifie le client. Par défaut, la valeur "Mozilla/4.0 (compatible - MSIE 4.01 - Windows CE)" est envoyée.
En effet, le contenu de la réponse peut dépendre de l'agent utilisateur. Par exemple, si la valeur par défaut est utilisée, la taille des pages affichées sera adaptée à l'écran du Pocket PC (uniquement si le serveur du site visualisé gère cette fonctionnalité).
<Entête HTTP supplémentaire> : Chaîne de caractères (entre guillemets) optionnelle
  • Entête HTTP supplémentaire à ajouter au message HTTP. Attention : cette chaîne doit se terminer par un Retour-Chariot (RC).
  • Chaîne vide ("") si aucun entête HTTP ne doit être ajouté.
<Type du formulaire> : Chaîne de caractères (entre guillemets) optionnelle
Type du formulaire à envoyer au serveur. Ce paramètre correspond au "Content-Type".
Par défaut, le type du message correspond à : "application/x-www-form-urlencoded".
<Nom User> : Chaîne de caractères (entre guillemets) optionnelle
Nom permettant d'accéder à une page avec une URL protégée (chaîne vide par défaut). Ce nom permet d'identifier l'utilisateur.
<Mot de passe> : Chaîne de caractères (entre guillemets) optionnelle
Mot de passe associé au nom d'utilisateur (chaîne vide par défaut). Permet d'accéder à une page avec une URL protégée. Attention : Le mot de passe est transmis en clair sur Internet.
Versions 20 et supérieures
WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax

Syntaxe utilisant le type httpRequête Masquer les détails

<Résultat> = HTTPEnvoieFormulaire(<Nom du formulaire> , <Requête HTTP>)
<Résultat> : Variable de type httpRéponse
Nom de la variable de type httpRéponse contenant la réponse de la requête.
<Nom du formulaire> : Chaîne de caractères (entre guillemets)
Nom du formulaire HTTP à envoyer.
<Requête HTTP> : Variable de type httpRequête
Nom de la variable httpRequête contant tous les paramètres nécessaires à l'envoi du formulaire.
Nouveauté 20
WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax

Syntaxe utilisant le type httpRequête Masquer les détails

<Résultat> = HTTPEnvoieFormulaire(<Nom du formulaire> , <Requête HTTP>)
<Résultat> : Variable de type httpRéponse
Nom de la variable de type httpRéponse contenant la réponse de la requête.
<Nom du formulaire> : Chaîne de caractères (entre guillemets)
Nom du formulaire HTTP à envoyer.
<Requête HTTP> : Variable de type httpRequête
Nom de la variable httpRequête contant tous les paramètres nécessaires à l'envoi du formulaire.
WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax

Syntaxe utilisant le type httpRequête Masquer les détails

<Résultat> = HTTPEnvoieFormulaire(<Nom du formulaire> , <Requête HTTP>)
<Résultat> : Variable de type httpRéponse
Nom de la variable de type httpRéponse contenant la réponse de la requête.
<Nom du formulaire> : Chaîne de caractères (entre guillemets)
Nom du formulaire HTTP à envoyer.
<Requête HTTP> : Variable de type httpRequête
Nom de la variable httpRequête contant tous les paramètres nécessaires à l'envoi du formulaire.
Remarques

Erreur de sécurité dans une transaction sécurisée

Lors d'une transaction sécurisée, certaines erreurs de sécurité peuvent faire échouer l'envoi du formulaire :
  • certificat invalide ou ne provenant pas d'une société connue.
  • nom du site figurant dans le certificat ne correspond pas à un serveur.
  • date du certificat non-valide ou expiré.
  • renvoi vers un serveur non sécurisé.
Ces erreurs sont renvoyées par la fonction ErreurInfo.
Si une de ces erreurs est rencontrée, il est possible d'exécuter à nouveau la requête en ignorant ces erreurs.
Selon la syntaxe utilisée, deux méthodes peuvent être utilisées :
  • Syntaxe 1 : utilisation de la variable HTTP.IgnoreErreur (voir paragraphe ci-dessous).
  • Versions 20 et supérieures
    WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax Syntaxe 2 : utilisation de la propriété ..IgnoreErreur de la variable httpRequête.
    Nouveauté 20
    WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax Syntaxe 2 : utilisation de la propriété ..IgnoreErreur de la variable httpRequête.
    WINDEVWEBDEV - Code ServeurWINDEV MobileiPhone/iPadAjax Syntaxe 2 : utilisation de la propriété ..IgnoreErreur de la variable httpRequête.
Si la syntaxe complète est utilisée (syntaxe 1), il suffit d'utiliser la variable HTTP.IgnoreErreur :
Erreur renvoyée par la fonction ErreurInfo
(avec la constante errCode)
Valeur de HTTP.IgnoreErreur
(ces valeurs peuvent être combinées)
Description
httpErreurCertificatInvalide
Certificat invalide ou ne provenant pas d'une société connue
httpIgnoreCertificatInvalideLe certificat est ignoré.
httpErreurNomCertificatInvalide
Nom du site figurant dans le certificat ne correspond pas à un serveur
httpIgnoreNomCertificatInvalideLe nom du site figurant dans le certificat est ignoré.
httpErreurCertificatExpiré
Date du certificat non-valide ou expiré
httpIgnoreCertificatExpiréLa date du certificat est ignorée
httpErreurRenvoiHTTP
Renvoi vers un serveur non sécurisé
httpIgnoreRenvoiHTTPLe renvoi vers un serveur non sécurisé est autorisé.
httpErreurRenvoiHTTPS
Renvoi vers un serveur sécurisé
httpIgnoreRenvoiHTTPSLe renvoi vers un serveur sécurisé est autorisé.
Par exemple :
// Envoi d'un formulaire sur un serveur sécurisé
ResLancement = HTTPEnvoieFormulaire("FORM", "https://www.MonServeur.com")
// Si erreur rencontrée
SI ResLancement = Faux ALORS
// Selon le type d'erreur rencontré
SELON ErreurInfo(errCode)
  // Certificat invalide ou ne provenant pas d'une société connue
  CAS httpErreurCertificatInvalide :
// Ignorer le certificat ?
SI OuiNon("Attention, une alerte de sécurité a été détecté !", ...
 "Le certificat est invalide.", ...
"Voulez-vous ignorer ce certificat ?") = Oui ALORS
HTTP.IgnoreErreur = httpIgnoreCertificatInvalide
// Nouvel envoi du formulaire ignorant cette erreur
HTTPEnvoieFormulaire("FORM", "https://www.MonServeur.com")
FIN
// Date du certificat non-valide ou expiré
CAS httpErreurCertificatExpiré :
// Ignorer la date du certificat ?
SI OuiNon("Attention, une alerte de sécurité a été détecté !", ...
"La date du certificat est invalide ou expiré.", ...
"Voulez-vous ignorer cette date ?") = Oui ALORS
HTTP.IgnoreErreur = httpIgnoreCertificatExpiré
// Nouvel envoi du formulaire en ignorant cette erreur
HTTPEnvoieFormulaire("FORM", "https://www.MonServeur.com")
FIN
FIN
FIN
AndroidWidget Android Les erreurs concernant la sécurité des transactions ne sont pas retournées par la fonction ErreurInfo (la connexion est simplement refusée). Ces erreurs ne peuvent pas être ignorées. La variable HTTP.IgnoreErreur n'est pas disponible.

Récupération

La fonction HTTPDonneRésultat permet de récupérer le résultat du dernier formulaire HTTP envoyé.

Accéder à une URL protégée par mot de passe

Pour accéder à une URL protégée par mot de passe, il est possible :
  • soit d'utiliser les paramètres <Nom User> et <Mot de passe> de la fonction HTTPEnvoieFormulaire.
  • soit de préciser directement dans le paramètre <URL à contacter> le login et le mot de passe.
    Par exemple :
    <Résultat> = HTTPEnvoieFormulaire("http://<user>:<password>@<URL à contacter>")

Utilisation d'un proxy

Pour accéder à l'URL spécifiée dans la fonction HTTPEnvoieFormulaire via un proxy, utilisez la fonction Proxy.

En-têtes d'authentification

Les entêtes d'authentification sont générées automatiquement dans les cas suivants :
  • Si la fonction HTTPEnvoieFormulaire utilise la syntaxe avec login et mot de passe.
  • Si l'URL serveur est protégée par mot de passe
  • Si la fonction Proxy est utilisée.
Versions 21 et supérieures
WINDEVWINDEV MobileUniversal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Internet et réseaux publics (sortant).
Cette fonctionnalité permet aux applications d'utiliser des accès à Internet et aux réseaux publics.
Nouveauté 21
WINDEVWINDEV MobileUniversal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Internet et réseaux publics (sortant).
Cette fonctionnalité permet aux applications d'utiliser des accès à Internet et aux réseaux publics.
WINDEVWINDEV MobileUniversal Windows 10 App

Fonctionnalité d'application requise

L’utilisation de cette fonction entraîne la déclaration d'une fonctionnalité d'application dans l'assistant de génération de l'application.
Fonctionnalité requise : Internet et réseaux publics (sortant).
Cette fonctionnalité permet aux applications d'utiliser des accès à Internet et aux réseaux publics.
Composantes
WINDEVWEBDEV - Code ServeurEtats et Requêtes wd220com.dll
Windows Mobile wp220com.dll
Linux wd220com.so
Android wd220android.jar
Version minimum requise
  • Version 14
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire