Skip to main content

Utilisation d’Explorer

Vous pouvez exécuter des requêtes sur des données réelles GitHub à l’aide de l’explorateur GraphQL, un environnement de développement intégré à votre navigateur qui comprend une documentation, une coloration syntaxique et des erreurs de validation.

À propos de GraphQL Explorer

GraphiQL, également désigné dans cette documentation comme GraphQL Explorer, est un « IDE GraphQL interactif dans navigateur graphique ».

Utilisation de GraphiQL

Pour utiliser l’application GraphiQL, téléchargez et installez-la à partir de https://github.com/skevy/graphiql-app.

Configuration de GraphiQL

  1. Obtenez un jeton OAuth.
  2. Lancez GraphiQL.
  3. Dans le coin supérieur droit de GraphiQL, cliquez sur Edit HTTP Headers.
  4. Dans le champ Key, entrez Authorization. Dans le champ Value, entrez Bearer <token>, où <token> est votre jeton OAuth généré. en-têtes graphiql
  5. Cliquez sur la coche à droite du jeton pour l’enregistrer.
  6. Pour revenir à l’éditeur, cliquez en dehors de la fenêtre modale Modifier des en-têtes HTTP.
  7. Dans le champ GraphQL Endpoint, entrez http(s)://<em>HOSTNAME</em>/api/graphql.
  8. Dans la liste déroulante Méthode, sélectionnez POST.

Remarque : pour plus d’informations sur la raison pour laquelle POST est la méthode, consultez « Communication avec GraphQL ».

Vous pouvez tester votre accès en vous interrogeant vous-même :

query {
  viewer {
    login
  }
}

Si tout a fonctionné correctement, votre connexion s’affiche. Vous êtes tous prêts à commencer à effectuer des requêtes.

Accès aux documents de la barre latérale

Tous les types d’un schéma GraphQL incluent un champ description compilé dans la documentation. Le volet réductible Docs sur le côté droit de la page Explorer vous permet de parcourir la documentation sur le système type. Les documents sont automatiquement mis à jour et suppriment les champs déconseillés.

La barre latérale Docs contient le même contenu que celui généré automatiquement à partir du schéma sous « Référence », bien qu’il soit mis en forme différemment sur place.

Utilisation du volet Variable

Voici quelques exemples d’appels qui incluent des variables écrites comme suit :

query($number_of_repos:Int!){
  viewer {
    name
     repositories(last: $number_of_repos) {
       nodes {
         name
       }
     }
   }
}
variables {
   "number_of_repos": 3
}

Il s’agit du format approprié pour envoyer l’appel à l’aide d’une requête POST dans une commande curl (tant que vous échappez des lignes).

Si vous souhaitez exécuter l’appel dans Explorer, entrez le segment query dans le volet principal et les variables dans le volet Variables de requête en dessous. Omettez le mot variables d’Explorer :

{
   "number_of_repos": 3
}

Demande de support

Pour consulter les questions, les rapports de bogues et les discussions concernant GitHub Apps, OAuth Apps et le développement d’API, explorez les Discussions sur les API et les intégrations dans la communauté GitHub. Les discussions sont modérées et gérées par le personnel GitHub. Toutefois, il n’est pas garanti que les questions publiées sur le forum reçoivent une réponse du personnel GitHub.

Envisagez de contacter le Support GitHub directement à l’aide du formulaire de contact pour :

  • réponse garantie du personnel de GitHub Enterprise Server
  • les demandes de soutien impliquant des données sensibles ou des préoccupations d’ordre privé
  • demandes de fonctionnalités
  • commentaires sur les produits GitHub Enterprise Server

Dépannage des erreurs

Étant donné que GraphQL est introspectif, Explorer prend en charge :

  • les typesaheads intelligents prenant en compte le schéma actuel
  • les aperçus des erreurs de validation lors de la saisie

Si vous entrez une requête qui n’est pas correctement formée ou ne passe pas la validation de schéma, une fenêtre contextuelle vous avertit d’une erreur. Si vous exécutez la requête, l’erreur est retournée dans le volet réponse.

Une réponse GraphQL contient plusieurs clés : une synthèse data et un tableau errors.

{
  "data": null,
  "errors": [
    {
      "message": "Objects must have selections (field 'nodes' returns Repository but has no selections)",
      "locations": [
        {
          "line": 5,
          "column": 8
        }
      ]
    }
  ]
}

Il est possible de rencontrer une erreur inattendue qui n’est pas liée au schéma. Dans ce cas, le message inclut un code de référence que vous pouvez utiliser lors de la création de rapports sur le problème :

{
  "data": null,
  "errors": [
    {
      "message": "Something went wrong while executing your query. This is most likely a GitHub bug. Please include \"7571:3FF6:552G94B:69F45B7:5913BBEQ\" when reporting this issue."
    }
  ]
}

Remarque : GitHub recommande de vérifier les erreurs avant d’utiliser des données dans un environnement de production. Dans GraphQL, la défaillance n’est pas totale : des parties des requêtes GraphQL peuvent réussir alors que d’autres échouent.