GQL-схема не возвращает вложенные объекты - PullRequest
0 голосов
/ 29 января 2019

Ниже приведен ответ, который я получаю от Rest API.

{
  'metadata': {
    'cache': '600',
  },
  "data": [{
    "name": "Content",
    "content": {
      "title": "Legal information",
      "paragraphs": [
        {
          "title": "Website terms of use1",
          "text": "Sample Text",
        }]
    }
  }]
}

Моя схема GQL выглядит следующим образом:

type Metadata {
  cache: String
}

type Content {
  metadata: Metadata
  data
}

Я хотел, чтобы GQL отправлял мне что угодно внутри data без какой-либо схемы.

Как это можно сделать, пожалуйста, помогите

1 Ответ

0 голосов
/ 29 января 2019

GraphQL не работает таким образом.Вы должны предоставить полное определение каждого конкретного типа объекта, который вы можете вернуть.

В некоторых других ответах SO предлагались такие приемы, как объявление scalar JSON, а затем сериализация данных в произвольной форме в строку JSON и возвращение этого,но это становится трудно использовать.(Вы не можете напрямую запрашивать поля внутри поля data: String, даже если оно действительно закодировано в формате JSON.)

Поскольку вы описываете проблему, вам может быть лучше просто представить бэкэнд REST APIнапрямую, а не пытаться обернуть его в неопределенный фасад GraphQL.

...