Skip to main content

Utilizar el Explorador

Puedes ejecutar consultas en datos reales de GitHub utilizando el explorador de GraphQL, un ambiente de desarrollo integrado en tu buscador que incluye documentos, sintaxis resaltada y errores de validación.

Acerca del explorador de GraphQL

GraphiQL, también mencionado en esta documentación como el explorador de GraphQL, es un "IDE de GraphQL gráfico e interactivo en el explorador".

Utilizar GrpahiQL

Para usar la aplicación GraphiQL, descárguela e instálela desde https://github.com/skevy/graphiql-app.

Configurar GraphiQL

  1. Obtenga un token de OAuth.
  2. Inicie GraphiQL.
  3. En la esquina superior derecha de GraphiQL, haga clic en Edit HTTP Headers (Editar encabezados HTTP).
  4. En el campo Key (Clave), escriba Authorization. En el campo Value (Valor), escriba Bearer <token>, donde <token> es el token de OAuth generado. Encabezados de GraphiQL
  5. Haga clic en la marca de verificación a la derecha del token para guardarlo.
  6. Para volver al editor, haga clic fuera del modal Edit HTTP Headers (Editar encabezados HTTP).
  7. En el campo GraphQL Endpoint (Punto de conexión de GraphQL), escriba https://<em>HOSTNAME</em>/api/graphql.
  8. En el menú desplegable Method (Método), seleccione POST.

Nota: Para obtener más información sobre por qué POST es el método, vea "Comunicarse con GraphQL".

Puedes probar tu acceso si te consultas a ti mismo:

query {
  viewer {
    login
  }
}

Si todo funcionó correctamente, esto mostrará tu ingreso. Estás listo para comenzar a hacer consultas.

Acceder a los documentos de la barra lateral

Todos los tipos en el esquema de GraphQL incluyen un campo description compilado en la documentación. El panel contraíble Docs (Documentos) en el lado derecho de la página del explorador le permite buscar documentación acerca de su tipo de sistema. Los documentos se actualizan automáticamente y eliminarán los campos obsoletos.

La barra lateral Docs (Documentos) incluye el mismo contenido que se genera automáticamente del esquema en "Reference" (Referencia), aunque con diferente formato en algunas partes.

Utilizar el pánel de variable

Algunas llamadas de ejemplo incluyen variables escritas de la siguiente manera:

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

Este es el formato correcto para enviar la llamada mediante un cURL POST (siempre que establezca un carácter de escape en las líneas nuevas).

Si quiere ejecutar la llamada en el explorador, introduzca el segmento query en el panel principal y las variables en el panel Query Variables (Variables de Consulta) debajo de este. Omita la palabra variables del Explorador:

{
   "number_of_repos": 3
}

Solicitar soporte

For questions, bug reports, and discussions about GitHub Apps, OAuth Apps, and API development, explore the Discusiones sobre API e integraciones en la comunidad de GitHub. The discussions are moderated and maintained by GitHub staff, but questions posted to the forum are not guaranteed to receive a reply from GitHub staff.

Consider reaching out to GitHub Support directly using the contact form for:

  • guaranteed response from GitHub AE staff
  • support requests involving sensitive data or private concerns
  • feature requests
  • feedback about GitHub AE products

Solucionar errores

Dado que GraphQL es introspectivo, el Explorador admite lo siguiente:

  • Autocompleción inteligente consciente del modelo actual
  • Vistas previas de validación de errores mientras tecleas

Si escribe una consulta que no está bien formada o no pasa la validación del esquema, un elemento emergente le advierte de un error. Si ejecutas la consulta, el error se devolverá en el panel de respuesta.

Una respuesta de GraphQL contiene varias claves: un código hash data y una matriz errors.

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

Es posible que te encuentres con un error inesperado que no está relacionado con el modelo. Si esto pasa, el mensaje incluirá el código de referencia que puedes utilizar cuando reportas el problema:

{
  "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."
    }
  ]
}

Nota: GitHub recomienda que compruebe si hay errores antes de utilizar datos en un entorno de producción. En GraphQL, la falla no es total: algunas porciones de las consultas de GraphQL pueden tener éxito y otras pueden fallar.