После того, как я столкнулся с проблемой, пытаясь решить проблему самостоятельно, я попробовал пример из документации и столкнулся с аналогичной проблемой, является ли документ неправильным, или я делаю что-то глупое?
ПримерЯ пытаюсь выполнить это на этой странице: https://www.apollographql.com/docs/apollo-server/federation/introduction/
Соответствующий фрагмент кода:
const server = new ApolloServer({
schema: buildFederatedSchema([{
typeDefs: gql`
extend type Query {
me: User
}
type User @key(fields: "id") {
id: ID!
username: String!
}
`,
resolvers: [],
}, {
typeDefs: gql`
extend type Query {
topProducts(first: Int = 5): [Product]
}
type Product @key(fields: "upc") {
upc: String!
name: String!
price: Int
}
`,
resolvers: [],
}, {
typeDefs: gql`
type Review {
body: String
author: User @provides(fields: "username")
product: Product
}
extend type User @key(fields: "id") {
id: ID! @external
reviews: [Review]
}
extend type Product @key(fields: "upc") {
upc: String! @external
reviews: [Review]
}
`,
resolvers: [],
}]),
context: ({ req }) => ({ user: req.user }),
})
Обратите внимание, что я специально оставил решатели пустыми, я простопытаюсь скомпилировать схему.
Вот ошибка, которую я получаю:
GraphQLSchemaValidationError: Field "User.id" can only be defined once. Field "Product.upc" can only be defined once.
Может кто-нибудь помочь мне с этим?