Es gibt eine bessere Möglichkeit, dies mit dem REST-Client Insomnia zu tun
Hier finden Sie Informationen zum Senden von Graphql-Anfragen: https://support.insomnia.rest/article/61-graphql
Unten sind die Schritte für den Postboten
Schritt 1.
Führen Sie GraphiQL in Chrome aus, öffnen Sie die Chrome Dev Console, klicken Sie auf die Registerkarte Netzwerk und führen Sie die Abfrage von graphiql aus. Wenn Sie die Abfrage durchführen, wird auf der Registerkarte Netzwerk die graphql-Anforderung angezeigt ...
Schritt 2.
graphql
Wählen Sie aus der Anforderungskopie die Anforderungsabfrage ausCopy as cURL (cmd)
Schritt 3.
Öffnen Sie den Postboten. Import
Klicken Import
Sie oben links auf die Schaltfläche. Nachdem Sie auf geklickt haben, müssen Sie auf klicken Paste Raw Text
und die kopierte cURL
Anforderung wie in Schritt 2 ausgeführt einfügen, nachdem Sie fertig sind. Klicken Sie aufImport
Schritt 4.
Postman ist bereit , die Graphql Anfrage zu senden, klicken Sie einfach auf den Send
Knopf, werden Sie das sehen Response
in dem Antwortfeld in Körper , wie unten
Schritt 5.
Um zu sehen, wie die Abfrage gesendet wird, klicken Sie auf die Body
Registerkarte neben Headers
, um zu erfahren, wie Sie die Felder vom Postboten im JSON-Format bereitstellen.
Beispiel: edges {\n node {\n id\n jobId\n }\n
Wenn Sie ein anderes Feld anzeigen möchten, müssen Sie es mit dem Suffix hinzufügen\n
wie wenn nötig name
dann:edges {\n node {\n id\n jobId\n name\n }\n
\n
hier bedeutet nur, eine neue Linie darzustellen. Stattdessen können Sie es einfacher machen, indem Sie einen klaren und anschaulichen JSON wie unten bereitstellen
================================================== =========================
Hinweis : Der Körpertyp muss mit demapplication/json
Inhaltstyproh sein. Die Abfrage muss also ein gültiger JSON mit Anführungszeichen sein".."
{
"query":"{viewer {user {edges {node {id jobId name }}}}}"
}
================================================== =========================
Sie können direkt damit beginnen, step 5
wenn Sie wissen, wie Sie die Anfrage im Hauptteil und in anderen Dingen senden, die erforderlich sind, während Sie eine Anfrage vom Postboten stellen
Mit vereinfachtem JSON
Sie benötigen INSOMNIA nicht, wenn der GraphQL-Server auf
Content-type: application/graphql
oder reagiertpostman.setEnvironmentVariable
.TU es einfach:
Auf der Registerkarte Überschriften:
Content-Type: application/graphql
Geben Sie auf der Registerkarte "Text" die Option "Roh" ein
quelle
Wenn Sie dies für alle hinzufügen, die nach dem Thema suchen, können Sie GraphQL-Aufrufe mit Insomnia viel besser und einfacher nutzen und testen:
https://insomnia.rest
Es war fantastisch für die GraphQL-Entwicklung.
quelle
Es gibt einen einfachen Weg, dies zu tun. Verwenden Sie ein Pre-Request-Skript, um die Nutzdaten ( Quelle ) zu kennzeichnen .
Schritt 1.
Fügen Sie im Hauptteil der Anfrage einen Platzhalter für die Nutzlast ein.
Schritt 2.
Erstellen Sie die Nutzdaten im Pre-Request-Skript und speichern Sie sie in einer Umgebungsvariablen.
Das ist es.
quelle
UPDATE 2:
Es ist nicht praktisch, POSTMAN zu verwenden, da es noch auf einfache Weise funktioniert, Header hinzuzufügen, die lange dauern, und ich denke, POSTMAN ist nicht für die natürliche Arbeit mit graphql gemacht.
Den Fortschritt dazu können Sie hier verfolgen: https://github.com/postmanlabs/postman-app-support/issues/1669
Ich empfehle ein anderes Paket-Plugin wie:
Für graphiql (keine Möglichkeit zum Hinzufügen von Headern) müssen Sie drei Dinge festlegen (die Eingabe ist nicht einfach):
Header:
Inhaltstyp: application / json
Körper:
Wählen Sie Ray <Optionsgruppe
Wählen Sie JSON (application / json) <selectbox
Erstellen Sie ein Javascript-Objekt mit "query" und dem "value" Ihrer Diagrammabfrage. Wie bei allen Objekten in js ist die Eigenschaft und der Wert erforderlich. In diesem Fall ist "quote" die Eigenschaft. Der Wert muss in doppelte Anführungszeichen gesetzt werden. Innerhalb des Wertes (graphl string) komponieren Sie keine js-Objekte, sodass Sie keine doppelten Anführungszeichen verwenden müssen, sondern nur einen String.
{"query": "{allQuotes {text}}"}
Das Problem ist, dass Sie alle in einer einzigen Zeile eingeben müssen, nicht wie bei grapIql ... es gibt eine Post-Anforderung in Postman Github, daher ist die Arbeit mit graphql einfach:
quelle
Postman hat gerade die integrierte GraphQL-Unterstützung in Version 7.2 veröffentlicht.
quelle
UPDATE 8-2019 - Ich weiß, dass dies alt ist, aber in Bezug auf POSTMAN haben sie, wenn Sie es noch nicht herausgefunden haben, eine graphql (Beta) -Option zum Posten des Körpers. Es müssen keine zusätzlichen Header hinzugefügt werden.
quelle
Ich hatte das gleiche Problem, als ich versuchte, die
graphQl
Abfrage mitPOSTMAN
POSTMAN zu verwenden. Senden Sie Daten von derraw
Registerkarte mit demjson
Typ.Abfragebefehl:
Mutations Command:
quelle
Wenn Sie Visual Studio verwenden, habe ich ein Plugin geschrieben, um GraphQL in Restful Body zu konvertieren
https://marketplace.visualstudio.com/items?itemName=orasik.graphql-to-rest-queries
quelle
Abgeleitet von Estevão Lucas 'Antwort .
Sie können auch die Kopfzeile
Content-type: application/json
für Postboten verwendenUnd definieren Sie den Körper mit:
Dies kann auf der Clientseite leicht aufgebaut werden, um eine Anforderungsnutzlast zu bilden.
z.B
Ausgabe:
quelle
Postman hat kürzlich die sofort einsatzbereite Unterstützung für GraphQL gestartet: https://blog.getpostman.com/2019/06/18/postman-v7-2-supports-graphql/
Unten sehen Sie den Screenshot des lokalen Testens von GraphQL:
Hinweis : Führen Sie GraphQL lokal mit Spring-Boot https://www.baeldung.com/spring-graphql aus
quelle
Kasse https://github.com/hasura/graphqurl - Curl für GraphQL:
Ich bin einer der Autoren.
quelle
WENN wir den Headertyp übergeben können, fügen Sie den Header Content-type hinzu: application / graphql
Der folgende Link kann als Referenz verwendet werden: Linkbeschreibung hier
quelle
Durch Hinzufügen eines Headers können wir eine grafische Abfrage im Postboten ausführen
Content-type: application/graphql
quelle