How to get requested fields inside GraphQL resolver?

Answers • 2 Asked • Jun 24 2019
I am using graphql-tools. After receiving a GraphQL query, I execute a search using ElasticSearch and return the data.

However, usually the requested query includes only a few of the possible fields, not all. I want to pass only the requested fields to ElasticSearch. First, I need to get the requested fields.

I can already get the whole query as a string. For example, in the resolver,
const resolvers = { Query: { async user(p, args, context) { //can print query as following console.log(context.query) } ..... } }

It prints as
query User { user(id:"111") { id name address } }

Is there any way to get the requested fields in a format like
{ id:"", name:"", address:"" }

Write your answer...

On a mission to build Next-Gen Community Platform for Developers