Guide de Démarrage rapide
Prêt à développer votre premier serveur LightREST ?
C’est parti !
- Téléchargement du composant LightREST ICI et dézip du fichier
- Création un nouveau projet WinDev (versions 25 et supérieures)
- Dans l’Explorateur du projet, clic-droit sur “Composants Externes” et sélection de “Importer un composant externe à partir d’un fichier”
- Sélection du fichier LightREST.wdi (là où il a été dézippé)
- Validation des divers écrans de confirmation
- Déplier l’élément “Composant LightREST” dans l’Explorateur du projet, le contenu devrait apparaître :
- Dans le code d’ouverture du projet, copier/coller ce code qui :
- Crée une route REST avec l’URL /ping et la méthode GET
- Démarre le serveur REST sur le port 9000
- Implémente une fonction pi_Ping() qui va générer la réponse (nb : on utilise ici une procédure interne par souci pratique; dans un vrai projet, on privilégiera une collection de procédures contenant les fonctions REST) :
- Le contenu de la réponse est “Pong” + heure système
- Le type du contenu est TEXTE (type MIME text/plain)
- Le statut de retour est OK (Statut HTTP 200)
bStartOK est booléen
cErrMess est chaîne
oServer est lrServer
//Création de la route /ping avec la méthode REST GET
oServer:AddRoute("/ping", lrServer::MethodGET, pi_Ping)
//Détermination de l'interface et du port d'écoute
oServer:IPAndPort = "0.0.0.0:9000"
//Activation du monitoring : renseignera les temps d'exécution dans les HEADERS de l'objet lrResponse
oServer:Monitoring = Vrai
ToastAffiche("Démarrage du serveur LightREST")
//C'est parti mon Kiki
(bStartOK, cErrMess) = oServer:Start()
SI PAS bStartOK ALORS
Erreur(cErrMess)
RETOUR
FIN
Info("Serveur LightREST démarré.", "Clic sur OK fermera le serveur.")
// Procedure REST pour la route /ping
PROCÉDURE INTERNE pi_Ping(stRequest est lrRequest <utile>) : lrResponse
oResponse est lrResponse
oResponse:Body = "Pong "+HeureSys()
oResponse:ContentType = lrResponse::ContentTXT
oResponse:Status = lrResponse::StatusOK
RENVOYER oResponse
FIN
- Démarrer le projet WinDev (au premier lancement il est possible que Windows demande de confirmer l’ouverture du port par l’application)
- Sur un navigateur internet, accéder à l’URL :
http://127.0.0.1:9000/ping
- Le serveur LightREST devrait répondre “Pong” + l’heure système :
Pong 03075396
Voilà !
Votre premier serveur LightREST fonctionne !
Pour aller plus loin, consulter la documentation et étudier le projet WinDev® LightREST Tuto
L’AGL WinDev offre une approche simplifiée du développement logiciel, permettant aux développeurs de créer des applications robustes et diversifiées avec une facilité remarquable. En associant les fonctionnalités de WinDev aux Web Services REST, voici quelques-uns des avantages majeurs :
Avantages de l’utilisation de l’AGL WinDev :
- Productivité accrue : WinDev propose une interface intuitive, des fonctionnalités de glisser-déposer et une bibliothèque de composants prêts à l’emploi, ce qui accélère le processus de développement et améliore la productivité des développeurs.
- Multiplateforme : Cette AGL permet le développement d’applications pour divers systèmes d’exploitation, offrant ainsi une portée étendue pour toucher un large public.
- Gestion de base de données intégrée : WinDev intègre des outils pour la gestion des bases de données, simplifiant ainsi la manipulation des données au sein des applications sans avoir recours à des outils externes.
- Connectivité avancée : Les capacités de connectivité de WinDev permettent une intégration aisée avec diverses sources de données externes.
Avantages des Web Services REST :
- Interopérabilité : Les Web Services REST utilisent des protocoles standard tels que HTTP, JSON et XML, favorisant ainsi leur compatibilité avec de multiples plateformes et langages.
- Simplicité et flexibilité : Leur architecture simple basée sur des requêtes HTTP courantes (GET, POST, PUT, DELETE) les rend faciles à comprendre, à utiliser et à mettre en œuvre. De plus, ils offrent une flexibilité dans la manipulation des données.
- Scalabilité : Les Web Services REST sont conçus pour être évolutifs, ce qui signifie qu’ils peuvent facilement s’adapter à des charges de travail plus importantes sans compromettre les performances.