Apollo GraphQL Ошибка: необходимо указать тип запроса root - PullRequest
0 голосов
/ 06 января 2020

У меня есть реализация Angular / Apollo GraphQL, генерирующая машинописный код на основе конечной точки GraphQl, которая выходит на схему. Я могу поразить конечную точку через почтальона с запросом, и результаты возвращаются. Однако, когда я запускаю "graphql-codegen --config codegen.yml" через npm, я получаю эту ошибку:

"Ошибка: необходимо указать тип запроса root"

сторона сервера. Net Реализация ядра с использованием GraphQL ASPNetCore. У меня определено 4 разных запроса, и каждый работает через graphiql.

Есть идеи, почему тип запроса root теперь возвращается как ноль?

Ответы [ 3 ]

0 голосов
/ 06 января 2020

В итоге я вернулся к предыдущей версии кодовой базы и повторно применил свои модификации вручную, и теперь это работает. Единственное, о чем я могу думать, - я запустил npm обновление, которое обновило apollo- angular с 1.8.3 до 1.10.0.

РЕДАКТИРОВАТЬ Вот мой код:

codegen.yml (используется для генерации кода из команды npm):

overwrite: true
schema: "https://to_end_point/Prod/api/v1/GraphQL"
documents: "src/**/*.graphql"
generates:
  src/generated/graphql.ts:
    plugins:
      - "typescript"
      - "typescript-operations"
      - "typescript-apollo-angular"
  ./graphql.schema.json:
    plugins:
      - "introspection"

После возврата к предыдущей версии кода Angular и повторного применения моих модификаций кода, кода GraphQl поколение сработало снова. Единственное, о чем я мог подумать, что могло вызвать эту проблему, это когда я запустил npm update. Ниже приведен скриншот до / после пакета. json:

enter image description here

0 голосов
/ 09 января 2020

У меня возникла та же проблема при использовании graphql-codegen.

мой codegen.yml

overwrite: true
schema: "http://localhost:3001/graphql"
documents: "src/app/graphql/*.graphql"
generates:
  src/generated/graphql.ts:
    plugins:
      - typescript
      - typescript-operations
      - typescript-apollo-angular

Проблема возникла, когда я использовал плагин typescript-apollo-angular.

Я использую Nodejs с graphql в качестве бэкэнда.

Проблема была решена, когда я переименовал тип RootQuery -> Query and RootMutation -> Мутация в бэкэнде схема .

До


type RootQuery {
  _empty: String  
}

type RootMutation {
  _empty: String
}

schema {
    query: RootQuery
    mutation: RootMutation
}

После

type Query {
  _empty: String  
}

type Mutation {
  _empty: String
}

schema {
    query: Query
    mutation: Mutation
}

0 голосов
/ 06 января 2020

Эта ошибка генерируется, когда схема / определения схемы неверны. Пожалуйста, проверьте ваши root определения схемы

https://www.advancedgraphql.com/content/schema-stitching

...