curlでGitHubのGraphQLサーバーにqueryでデータを取得できたのでメモ。
コマンド
curl -i -H "Authorization: bearer GITHUB_TOKEN" \
-X POST -d "{ \"query\": \"query { viewer { login }}\"}" https://api.github.com/graphql
GITHUB_TOKEN
は以下のページから自分で作成すること。
レスポンスはこんなjsonが返ってくる
{"data":{"viewer":{"login":"GitHubのユーザー名"}}}
注意点
GitHub v4のドキュメントを見ると、queryをjson化する必要があるようだ。
To query GraphQL using cURL, make a POST request with a JSON payload. The payload must contain a string called query:
cURLを使用してGraphQLをクエリするにはPOST、JSONペイロードを使用してリクエストを行います。ペイロードには、次の文字列が含まれている必要がありますquery。
これを見落としていたため、何度も通信できず大変だった。
教訓
ドキュメントはしっかり読もう!