Express-graphqlミドルウェアを使用します。本文に次のリクエストを送信します。
POST /graphql HTTP/1.1
Host: local:8083
Content-Type: application/graphql
Cache-Control: no-cache
Postman-Token: d71a7ea9-5502-d5fe-2e36-0ae49c635a29
{
testing {
pass(id: 1) {
idn
}
}
}
そしてエラーがあります
{
"errors": [
{
"message": "Must provide query string."
}
]
}
graphqlでは、URLで更新を送信できます。
URL文字列が短すぎます。のような更新モデルを送信する必要があります
mutation {
update(id: 2, x1: "zazaza", x2: "zazaza", x3: "zazaza" ...(more more fields)...) {
idn
}
}
私はそれがリクエストボディにあるに違いないと思います。 「更新」クエリを送信したり、間違っていることを送信するにはどうすればよいですか?
リクエストを送信するには、ヘッダー情報を管理する必要があります。
HTTPクライアントの使用:Content-Type application/json
Postmanクライアントの使用:Content-Type application/graphql
しかし、リクエストの本文は文字列のように見えます
{"query":"mutation{update(id:1,x1:\"zazaz\",x2:\"zazaz\"......){id x1 x2}}"}
Graphqlを使用していて、postmanまたはその他のRestクライアントを使用してテストする場合は、これを実行します。
郵便配達員で、POST
メソッドを選択し、URL
を入力してContent-Type
as application/graphql
その後、クエリを本文に渡します。
例:
http://localhost:8080/graphql
Mehtod: POST
Content-Type: application/graphql
Body:
query{
FindAllGames{
_id
title
company
price
year
url
}
}
それはあなたが応答を得るということです。
コンテンツタイプをJSONに切り替えます。このように Postman画像を参照
Postmanバージョンの使用7.2.2同様の問題がありました。このバージョンのPostmanは、すぐにGraphqlをサポートします。 Content-typeをapplication/json
に変更すると、修正されました。 Postmanのコンテンツタイプを示す画像