DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Fonctions Webservices
  • Propriétés spécifiques à la description des variables de type apiRequête
  • Gestion des différents types MIME lors de la requête au Webservice
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
apiRequête (Type de variable)
En anglais : apiRequest
Le type apiRequête permet de définir toutes les caractéristiques avancées d'un requête exécutée via un webservice REST, importé via la documentation OpenAPI. Ces caractéristiques peuvent être définies et modifiées à l'aide de différentes propriétés WLangage.
Remarque : Pour plus de détails sur la déclaration de ce type de variable et l'utilisation des propriétés WLangage, consultez Déclaration d'une variable.
Exemple
Req est un apiRequête
Req.EntêteHTTP["cle"] = "Valeur"
// Appel d'un point d'entrée du Webservice REST 
// en lui passant l'entête puis les paramètres attendus
MonWebService.GetListeUtilisateur(Req, param1_WS, param2_WS)
Propriétés

Propriétés spécifiques à la description des variables de type apiRequête

Les propriétés suivantes peuvent être utilisées pour manipuler une variable de type apiRequête :
Nom de la propriétéType manipuléEffet
CertificatClientChaîne de caractères ou bufferCorrespond :
  • à une chaîne de caractères contenant un chemin d'accès au fichier .p12 contenant le certificat à joindre à la requête. Le chargement du certificat se fera automatiquement en prenant :
    • le certificat présent dans la bibliothèque de l'exécutable (s'il a été intégré à l'application),
    • le certificat présent à l'emplacement spécifié sur disque (si le certificat n'a pas été intégré dans la bibliothèque de l'exécutable).
  • à un buffer contenant le certificat (utilisation de la fonction fChargeBuffer).
Si cette propriété correspond à une chaîne vide (""), le certificat par défaut est réinitialisée à "<Aucun>".
EntêteHTTPTableau associatif de chaînes de caractèresEnsemble clé/valeur des entêtes à envoyer.
Exemple d'utilisation de cette propriété :
cMaRequête.EntêteHTTP["Authorization"] = ...
	" WSSE profile=""UsernameToken"""
cMaRequête.EntêteHTTP["X-WSSE"] = ...
	"UsernameToken Username=blahblah "
cMaRequête.Entête["Cache-Control"] = " no-cache"
MotDePasseCertificatClientChaîne de caractères ou Chaîne secrèteMot de passe associé au certificat client (chaîne vide par défaut).
Nouveauté 2025
Utilisation de chaînes secrètes : Si vous utilisez le coffre-fort de chaînes secrètes, le type de la chaîne secrète utilisable pour ce paramètre doit être "Chaîne Ansi - Latin".
Pour plus de détails sur les chaînes secrètes et l'utilisation du coffre-fort, consultez Coffre-fort de chaînes secrètes.
TimeoutConnexionEntier ou DuréeTemps maximal d'attente pour la connexion exprimé en millisecondes (par défaut 20 secondes, soit 20000 millisecondes). Cette propriété peut correspondre à :
  • un entier correspondant au nombre de millisecondes,
  • une variable de type Durée,
  • l'indication directe de la durée (par exemple 20 s ou 20000 ms).
Si à la fin de ce délai, la connexion n'a pas pu s'effectuer, il y a échec de la connexion.
Remarques

Gestion des différents types MIME lors de la requête au Webservice

Lors de l'utilisation d'un Webservice, les fonctions du Webservice peut attendre différents types Mime dans leurs paramètres.
Si le type Mime de la requête est différent de JSON, il est nécessaire d'effectuer une sérialisation.
Exemple :
  1. Création de l'élément à passer à l'API :
    // Création d'un élément de type Author (type définit par l'API)
    auteur est un 'Library Management API'.Author
    auteur.id = 12
    auteur.name = "Molière"
    auteur.birthDate = "16091205"
    auteur.nationality = "Français"
  2. Le type MIME de la requête est "application/json" :
    APIReqJSON est un apiRequête
    APIReqJSON.EntêteHTTP["Content-Type"] = typeMimeJSON
    'Library Management API'._authorspost(APIReqJSON,"token",auteur)
  3. Le type MIME de la requête est différente de application/json (par exemple application/xml) : une sérialisation est nécessaire :
    // Sérialisation de l'auteur avant de le passer en paramètre à l'API
    sAuteur est une chaîne
    oXml est un xmlNoeud = JSONVersXML(auteur)
    sAuteur = oXml..SourceXML
    
    APIReqXML est un apiRequête
    APIReqXML.EntêteHTTP["Content-Type"] = typeMimeApplicationXML
    'Library Management API'._authorspost(APIReqXML,"token",sAuteur)
Version minimum requise
  • Version 28
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 10/03/2025

Signaler une erreur ou faire une suggestion | Aide en ligne locale