web-dev-qa-db-fra.com

REST Test API: Comment obtenir une réponse en utilisant Google Chrome outils de développement?

Je suis très nouveau dans les tests d'API.

J'essaie d'utiliser les outils de développement de Google Chrome pour comprendre et explorer ce sujet.

Question 1:
Est-il possible d'obtenir la réponse (éventuellement au format JSON) d'une simple requête GET en utilisant chrome outils de développement?

Ce que je fais actuellement, c'est:

  • Ouvrez chrome outils de développement
    • Accédez à l'onglet Réseau
    • Effacer les journaux existants
    • Envoyez une demande de publication simplement en appuyant sur une URL. par exemple. https://stackoverflow.com/questions/ask
    • Vérifiez les documents correspondants chargés enter image description here

      Question 2:
      Quelle est la pertinence des "En-têtes de réponse" montrés sur l'image ci-dessus? Je veux dire, ai-je raison de penser que c'est la réponse que j'obtiens après avoir fait la demande GET?

      Toute aide ou référence que vous pouvez donner est très appréciée!

  • 5
    iamkenos

    Si vous voulez tester une api de repos, je suppose que vous obtenez postman qui est destiné à cet effet.

    Aller à vos questions:

    Question 1: Est-il possible d'obtenir la réponse (éventuellement au format JSON) d'une simple requête GET en utilisant chrome outils de développement?

    Le premier point à préciser est que c'est le serveur qui enverra ou non une réponse json au navigateur. Pas le navigateur qui peut choisir de voir une réponse comme json.

    Si vous envoyez une demande GET que le serveur répond avec un objet json ou un tableau json et le Content-type l'en-tête est défini sur application/json, vous verrez cette réponse déjà formatée dans la fenêtre principale du navigateur.

    Si la Content-type est réglé sur text/html, par exemple, vous obtiendrez toujours le texte a json comme réponse dans la fenêtre principale, mais il ne sera pas bien formaté. Selon la façon dont la réponse a été envoyée, vous pouvez parfois la voir bien formatée en cliquant avec le bouton gauche de la souris sur la fenêtre du navigateur et en sélectionnant afficher la page source

    Pour cela, vous n'avez pas besoin des outils du développeur, sauf si vous voulez voir combien de temps il a fallu pour recevoir la réponse, ou vérifier les en-têtes pour une valeur spécifique, etc., mais rien à voir avec la réception de la réponse ou son affichage à l'écran.

    Les outils du développeur sont plus utiles si vous travaillez avec javascript/jquery et/ou si vous envoyez des requêtes ajax (GET ou POST). Dans ces cas, vous pouvez déboguer la fonction et voir également la demande ajax pour vérifier ce qui s'est réellement passé de votre navigateur et ce qui a été reçu comme réponse.

    Question 2: Quelle est la pertinence des "en-têtes de réponse" montrés sur l'image ci-dessus? Je veux dire, ai-je raison de penser que c'est la réponse que j'obtiens après avoir fait la demande GET?

    Dans la réponse, vous obtenez les deux éléments, les en-têtes et le contenu. Les objets json que vous voyez font partie du contenu et non les en-têtes.

    Les en-têtes indiqueront au navigateur, par exemple, que le corps est json (par rapport à un documenet html ou quelque chose de différent), en plus d'autres informations comme le contrôle du cache ou la longueur du corps.

    Recherchez en-têtes http pour plus d'informations sur les en-têtes standard.

    4
    Juan

    Pour répondre étroitement à vos questions:

    Est-il possible d'obtenir la réponse (éventuellement au format JSON) d'une simple requête GET en utilisant chrome outils de développement?

    Oui! Cliquez simplement sur l'onglet Réponse, qui se trouve à droite de l'onglet En-têtes ouvert dans votre capture d'écran.

    Quelle est la pertinence des "en-têtes de réponse" montrés sur l'image ci-dessus? Je veux dire, ai-je raison de penser que c'est la réponse que j'obtiens après avoir fait la demande GET?

    Oui, ce sont les en-têtes HTTP qui ont été envoyés avec la réponse à votre demande.

    La question plus large ici est "comment puis-je tester une REST API?" DevTools est bon pour les tests manuels, mais il existe des outils automatisés qui peuvent le rendre plus efficace. Je laisse cela à vous pour en savoir plus sur ce vaste sujet.

    3
    Kayce Basques