DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer et consommer un Webservice / Développer un Webservice REST
  • Appel par programmation d'une fonction REST
  • Webservice REST sécurisé
  • Exemples
  • Exemples simples
  • Exemples d'accès à un Webservice REST sécurisé
WINDEV
WindowsLinuxJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac Catalyst
Autres
Procédures stockées
Appel par programmation d'une fonction REST
La fonction RESTEnvoie permet d'appeler une fonction d'un Webservice REST. Pour cela, vous devez:
  • Utiliser une variable de type restRequête pour décrire la fonction REST à appeler. Les principales propriétés à utiliser sont les suivantes :
    • La propriété URL décrit l'adresse (URL) de la fonction du Webservice REST.
    • La propriété Méthode décrit la méthode HTTP (GET, PUT, etc.).
    • La propriété ContentType décrit le type de la donnée à envoyer en paramètre à la fonction du Webservice REST.
    • La propriété Contenu contient les données à envoyer en paramètre à la fonction du Webservice REST.
    • Les éventuels paramètres à passer.
  • Utiliser une variable de type restRéponse pour récupérer le résultat de la fonction REST :
    • La propriété CodeEtat contient le code erreur de retour.
    • La propriété Contenu contient les données de la réponse.
Remarque : En cas d'utilisation d'un Webservice REST sécurisé, il est nécessaire d'utiliser la propriété AuthToken.

Webservice REST sécurisé

Pour utiliser une fonction d'un Webservice REST sécurisé, il est nécessaire de :
  1. Se connecter via OpenID ou OAuth pour récupérer le token d'identification et d'autorisation.
  2. Utiliser le token lors de l'envoi de la requête au Webservice REST.
Remarque : Dans le Webservice, il est possible de connaître l'identité de l'utilisateur via la fonction WebserviceLitTokenUtilisateur.
Exemples

Exemples simples

  • L'exemple de code ci-dessous montre comment récupérer les informations d'un client par son numéro. Si le client n'existe pas, un code 200 est retourné.
    nNumClient est un entier
    nNumClient = 2
    h est un httpRequête
    h.Méthode = httpGet
    h.URL = "http://localhost/V1/Clients/" + nNumClient
    r est un httpRéponse = RESTEnvoie(h)
    SI r.CodeEtat = 200 ALORS
    	Info(r.Contenu)
    SINON
    	Info("Client inexistant", r.Contenu)
    FIN
  • L'exemple de code ci-dessous montre comment supprimer un client par son numéro. Si le client n'existe pas, un code 404 est retourné.
    nNumClient est un entier
    nNumClient = 267
    h est un httpRequête
    h.Méthode = httpDelete
    h.URL = "http://localhost/V1/Clients/" + nNumClient
    r est un httpRéponse = RESTEnvoie(h)
    SI r.CodeEtat = 404 ALORS
    	Info("Client NON trouvé.")
    SINON
    	Info("Le client a été supprimé avec succès")
    FIN
  • L'exemple de code ci-dessous montre comment ajouter un client. Si l'ajout du client a réussi, un code 201 est retourné.
    NouveauCli est un Buffer
    vCli est un Variant
    vCli.nomClient = "DUPONT"
    vCli.societe = "Société DUP"
    vCli.ville = "MONTPELLIER"
    NouveauCli = VariantVersJSON(vCli)
    h est un httpRequête
    h.Méthode = httpPost
    h.URL = "http://localhost/V1/Clients"
    h.ContentType = "application/json"
    h.Contenu = NouveauCli
    r est un httpRéponse = RESTEnvoie(h)
    SI r.CodeEtat = 201 ALORS
    	Info(r.Contenu)
    SINON
    	Info("Erreur de création de client", r.Contenu)
    FIN

Exemples d'accès à un Webservice REST sécurisé

Exemple de connexion sécurisée par OpenID : le token récupéré peut ensuite être utilisé dans la propriété AuthToken de la variable de type restRequête
openid_param est un OpenIDParamètres
openid_param.URLConfiguration = "http://localhost/.well-known/openid-configuration"
openid_param.ClientID = "01234567-89ab-cdef-0123-456789abcdef"
openid_param.ClientSecret = "fedcba98-7654-3210-fedc-ba9876543210"
openid_param.Scope = "lecture"
openid_param.TypeAutorisation = taCodeAutorisation

soit token = AuthIdentifie(openid_param)
SI PAS token.Valide ALORS
	SI ErreurDétectée ALORS
		Info(ErreurInfo(errComplet))
	SINON
		Info("Token invalide")
	FIN
	RETOUR
FIN
Version minimum requise
  • Version 22
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 21/01/2025

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