Une méthode simple pour tester les requêtes HTTP pendant le développement
Les développeurs de sites web et de services web ont souvent besoin d'envoyer des requêtes HTTP, que ce soit pour tester des API, tester des services web REST et SOAP, ou pour gérer des sites web.
XMLSpy facilite l'envoi et la réception de requêtes HTTP directement dans l'éditeur XML et l'éditeur JSON pendant le développement, grâce à sa fenêtre HTTP et à son assistant d'importation WADL/WSDL, un outil très pratique pour gagner du temps lors du débogage des services web.

Tests de requêtes HTTP
Le protocole HTTP définit la manière dont les fichiers (textes, images, etc.) sont transmis sur Internet. Chaque serveur web exécute un programme (appelé démon) qui attend en permanence les requêtes HTTP et les traite au fur et à mesure qu'elles arrivent.
Par exemple, lorsque vous visitez la page d'accueil d'un site web, votre navigateur envoie une commande HTTP au serveur web du site, demandant le téléchargement de cette page d'accueil. Le serveur reçoit cette requête via son daemon HTTP et envoie la page demandée. Il est important de noter que le protocole HTTP est sans état, ce qui signifie que chaque commande HTTP est exécutée indépendamment, sans référence aux commandes précédentes ou suivantes. Cela peut rendre les tests et le débogage plus complexes.
Pour aider les développeurs, la fenêtre de test HTTP dans XMLSpy vous guide tout au long du processus de création et d'envoi d'une requête HTTP à un serveur web. Vous pouvez ensuite recevoir, vérifier et résoudre les problèmes liés à la réponse.

Une requête est définie dans le volet gauche de la fenêtre et peut consister en :
- Une méthode HTTP de la requête (GET, PUT, POST, etc.) et l’URL cible
- Les en-têtes HTTP de la requête
- Paramètres de connexion, par ex., délais d’expiration et options de sécurité
- Pour les méthodes POST et PUT, le corps du message HTTP
Neuf onglets séparés dans la fenêtre HTTP vous permettent de stocker et tester de multiples messages et de les basculer entre eux, tel que requis.
Une fois la requête définie, appuyez sur "Envoyer" pour la transmettre au serveur web. Vous pouvez analyser immédiatement la réponse dans le panneau de droite, qui affiche le contenu (tel qu'il est montré ci-dessus) et les informations de l'en-tête :

Importer une requête WADL ou WSDL
Vous pouvez également lancer un test en important une requête à partir d'un fichier WADL (Web Application Description Language), qui fournit une description lisible par machine d'une application basée sur HTTP, ou d'un document WSDL décrivant les points d'accès d'un service web SOAP.
La fenêtre HTTP de XMLSpy comprend un assistant d'importation WADL/WSDL qui vous guide à travers les étapes suivantes : ouverture d'un fichier, sélection d'une requête à tester, et modification de tous les paramètres modifiables de cette requête.
Puis, il importe la requête dans la fenêtre HTTP pour que vous puissiez l’envoyer et revoir la réponse.

Déboguer une API REST
Examinons un exemple concret, en utilisant la fenêtre HTTP pour tester la réponse d'une API web. Le portail de données de la ville de Chicago est une API REST publique qui fournit des données intéressantes sur divers sujets, allant des permis de construire aux budgets municipaux, en passant par le nombre d'hospitalisations liées à l'asthme dans la ville.
Pour cet exemple, nous allons examiner la catégorie du trafic et nous concentrer sur un ensemble de données concernant les infractions au feu rouge. Je peux saisir l'URL dans la fenêtre HTTP pour récupérer l'ensemble des données. L'ajout de ".xml" ou ".json" à la fin de la requête spécifie le format des données renvoyées. J'ai choisi XML pour cette opération, mais bien sûr, XMLSpy dispose d'outils intégrés pour travailler avec les deux formats. Vous pouvez voir le résultat renvoyé par la fenêtre HTTP ci-dessous.

Nous pouvons examiner les données dans le volet des résultats, ou cliquer sur « Créer un nouveau document » pour ouvrir le document dans l'éditeur XMLSpy, en mode texte ou en mode tableau. Cela facilite la navigation et la vérification des données renvoyées par l'API.

Avec les données stockées dans un fichier, nous pouvons même utiliser XQuery pour affiner davantage notre analyse. Examinons par exemple les emplacements des caméras où le nombre de violations dépasse 20.

Maintenant, récupérons les données à nouveau, mais cette fois au format JSON.
Voici comment cela s'affiche en mode texte..

Vous pouvez également visualiser le JSON dans la grille JSON unique d'XMLSpy, ce qui permet une représentation graphique. La grille JSON facilite grandement l'examen et la compréhension des données renvoyées, surtout lorsqu'il s'agit de grands ensembles de données comme celui-ci. L'éditeur JSON inclut également une prise en charge intégrée du filtrage des données à l'aide de XQuery, comme illustré ci-dessous. J'ai filtré les données pour afficher uniquement les enregistrements qui incluent des intersections avec la rue Halsted.

La fenêtre HTTP, associée aux outils de visualisation et d'édition intégrés, fait de XMLSpy un outil idéal pour tester et déboguer les API, les services web et autres applications HTTP.
Téléchargez une version d'essai gratuite de XMLSpy pour essayer la fenêtre HTTP.