Когда использовать apollo-сервер в node.js поверх экспресса - PullRequest
0 голосов
/ 19 мая 2019

У меня небольшой проект с несколькими запросами. Я заметил много разговоров об apollo-сервере, который, кажется, является прямой альтернативой для бэкэндов, использующих graphql.

В настоящее время я использую graphqlHTTP в качестве промежуточного программного обеспечения для экспресса, вот так:

const express = require("express")
const app = express();

    app.use("/graphql", graphqlHTTP({
        schema: schema,
        rootValue: root,
        graphiql: true
    }))

и использую API выборки всякий раз, когда мне нужно запросить что-то из серверной части.

Затем с помощью apollo кажется, что вы передаете схему и средства распознавания и создаете экземпляр сервера. создайте свой экспресс-сервер и используйте его в качестве промежуточного программного обеспечения для вашего apolloserver. Но затем запустить экспресс-сервер вместо apolloserver?

const server = new ApolloServer({ typeDefs, resolvers });

const app = express();
server.applyMiddleware({ app });

app.listen({ port: 4000 }, () =>
  console.log(`? Server ready at http://localhost:4000${server.graphqlPath}`)
);

Пример: https://www.npmjs.com/package/apollo-server-express?activeTab=readme

когда мне следует использовать сервер apollo поверх экспресс-сервера с промежуточным программным обеспечением graphQLHTTP?

...