insomnia graphiql framework consulta graphql postman

graphiql - ¿Cómo enviar una consulta graphql por cartero?



insomnia graphql file (14)

ACTUALIZACIÓN 2:

No es práctico usar POSTMAN, porque todavía funcionan de manera fácil para agregar encabezados, eso lleva mucho tiempo, y creo que POSTMAN no está hecho para trabajar naturalmente con graphql,

Puede seguir el progreso al respecto aquí: https://github.com/postmanlabs/postman-app-support/issues/1669

Recomiendo usar otro complemento de paquetes como:

the best (like postman , but profile and sync price 5$ monthly): https://insomnia.rest/ others: https://github.com/andev-software/graphql-ide https://github.com/imolorhe

para graphiql (sin posibilidad de agregar encabezados) necesita establecer tres cosas (no es fácil de escribir):

  1. Encabezamiento:

    Tipo de contenido: application / json

  2. Cuerpo:

    Elija Ray <grupo de opciones

    Elija JSON (aplicación / json) <selectbox

  3. Componga el objeto javascript con "consulta" y el "valor" de su consulta gráfica. Al igual que todos los objetos en js, se necesita la propiedad y el valor, en este caso "cita" es la propiedad, el valor debe ser entre comillas dobles. Dentro del valor (cadena de gráfico) no compones objetos js, por lo que no necesitas usar comillas dobles, es solo una cadena.

    {"query": "{allQuotes {text}}"}

    el problema es que necesita escribir todo en una sola línea, no como grapIql ... hay un requisito de publicación en postman github, por lo que es fácil trabajar con graphql:

yo suelo

POST type URL http://######/graphql Body: query: "query: "{''noteTypes'': {''name'', ''label'', ''labelColor'', ''groupName'', ''groupLabel'', ''imageUrl''}}"

Pero devuelve "mensaje": "Debe proporcionar una cadena de consulta".


ACTUALIZACIÓN 8-2019: sé que esto es antiguo, pero con respecto a POSTMAN, si aún no lo ha resuelto, tienen una opción graphql (beta) para publicar el cuerpo. No es necesario agregar encabezados adicionales.


Agregando esto para cualquiera que busque sobre el tema ... puede utilizar y probar llamadas GraphQL mucho mejor y más fácilmente con Insomnia:

Insomnia

Ha sido fantástico para el desarrollo de GraphQL.


Al agregar el encabezado podemos ejecutar la consulta graphql en el cartero

Content-type: application/graphql


Checkout https://github.com/hasura/graphqurl - curl for GraphQL:

  • CLI para realizar consultas GraphQL con autocompletar
  • Ejecute GraphiQL localmente en cualquier punto final (con encabezados personalizados)
  • Úselo como una biblioteca con nodejs o desde el navegador
  • Admite suscripciones

Soy uno de los autores

gq https://gentle-anchorage-72051.herokuapp.com/v1alpha1/graphql -i


Derivado de la respuesta de Estevão Lucas .

También puede usar el encabezado Content-type: application/json en cartero

Y define el cuerpo con:

{ "query": "{ your_query }" }

Esto se construye fácilmente en el lado del cliente para formar una carga útil de solicitud.

p.ej

Salida:


Hay una manera simple de hacerlo. Use una secuencia de comandos previa a la solicitud para stringificar la carga útil ( source ).

Paso 1.

En el cuerpo de la solicitud, coloque un marcador de posición para la carga útil.

{ "query":{{query}} }

Paso 2.

Cree la carga útil en la secuencia de comandos previa a la solicitud y almacénela en una variable de entorno.

postman.setEnvironmentVariable("query", JSON.stringify( ` { search(query: "test", type: ISSUE, first: 10) { issueCount edges { node { ... on Issue { title id state closed repository { name } } } } } } ` ));

Eso es.


Hay una mejor manera de hacerlo usando el cliente REST Insomnia

Los documentos están aquí, cómo enviar consultas graphql: https://support.insomnia.rest/article/61-graphql

A continuación se detallan los pasos para el cartero.

Paso 1.

Ejecute GraphiQL en Chrome, abra Chrome Dev Console, haga clic en la pestaña Red y realice la consulta desde graphiql, cuando realice la consulta, la pestaña de red mostrará la solicitud de graphql ...

Paso 2.

De la solicitud de graphql copie la consulta de solicitud, seleccione Copy as cURL (cmd)

Paso 3.

Abra Postman, en la parte superior izquierda, haga clic en el botón Import , después de hacer clic en Import , debe hacer clic en Paste Raw Text y pegar la solicitud de cURL copiada como se hizo en el paso 2 después de hacer clic en Import

Paso 4.

El cartero está listo para enviar la solicitud Graphql, solo haga clic en el botón Send , verá la Response en el cuadro de respuesta en el cuerpo como se muestra a continuación

Paso 5

Para ver cómo se envía la consulta, haga clic en la pestaña Body junto a Headers , sabrá cómo proporcionar los campos del cartero en formato JSON.

por ejemplo: edges {/n node {/n id/n jobId/n }/n , si desea ver otro campo, entonces debe agregarlo con el sufijo /n

como si necesita name entonces: edges {/n node {/n id/n jobId/n name/n }/n

/n aquí solo significa representar una nueva línea. En cambio, puede simplificarlo proporcionando un JSON claro e ilustrativo como el siguiente

================================================== =========================

Nota : El tipo de cuerpo debe ser sin application/json con application/json content-type. Entonces, la consulta debe ser un JSON válido con comillas ".."

{ "query":"{viewer {user {edges {node {id jobId name }}}}}" }

================================================== =========================

puede comenzar directamente desde el step 5 si sabe cómo enviar la consulta en el cuerpo y otras cosas que también deben ser requeridas al hacer una solicitud del cartero

Con JSON simplificado


Postman acaba de lanzar el soporte incorporado de GraphQL en la versión 7.2.

Esta versión es compatible

  • Enviar consultas GraphQL en el cuerpo de la solicitud como solicitudes POST
  • Soporte para variables GraphQL
  • Crear API en Postman con el tipo de esquema GraphQL
  • Consulta de autocompletado integrada con esquemas GraphQL definidos por el usuario

Pruébelo y envíenos sus comentarios sobre el hilo de seguimiento en nuestro foro de la comunidad



SI podemos pasar el tipo de encabezado, luego agregue el encabezado Content-type: application / graphql

El siguiente enlace se puede utilizar como referencia: descripción del enlace aquí



graphQl el mismo problema cuando intenté usar la consulta graphQl usando POSTMAN , en POSTMAN enviar datos desde la pestaña sin raw con el tipo json .

Comando de consulta:

{"query":"{user(id:902){id,username,DOB}}"}

Comando de mutaciones:

{ "query": "mutation {createMutations(reviewer:36, comments:/"hello/",data_id: 1659, approved: true ){id}}" } #commnent: String Type #data_id:Int Type #approved:Boolean Type


No necesita INSOMNIA en caso de que el servidor GraphQL responda a Content-type: application/graphql o postman.setEnvironmentVariable ,

Simplemente hazlo:

En la pestaña Encabezados: Content-Type: application/graphql

En la pestaña Cuerpo, "sin procesar" seleccionado, coloque su consulta