GraphQL - как получить типы полей из найденной схемы? - PullRequest
1 голос
/ 29 октября 2019

Зная схему (полученную через getIntrospectionQuery), как я могу получить тип определенного поля?

Например, скажем, я выполняю этот запрос:

query {
  User {
    name
    lastUpdated
    friends {
      name
    }
  }
}

иполучить такой результат:

{
  "data": {
    "User": [
      {
        "name": "alice",
        "lastUpdated": "2018-02-03T17:22:49+00:00",
        "friends": []
      },
      {
        "name": "bob",
        "lastUpdated": "2017-09-01T17:08:49+00:00",
        "friends": [
          {
            "name": "eve"
          }
        ]
      }
    ]
  }
}

Я хотел бы знать типы полей и построить что-то вроде этого:

{
  "name": "String",
  "lastUpdated": "timestamptz",
  "friends": "[Friend]"
}

Как я могу сделать это без дополнительных запросов к серверу?

1 Ответ

0 голосов
/ 01 ноября 2019

После извлечения схемы вы можете встроить ее в объект JSON (если ваша инфраструктура graphql этого не делает уже для вас).

Используя анализатор JSON, вы можете получить типы каждого поля.

Я не буду вдаваться в подробности, так как это будет зависеть от используемой вами технологии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...