阿波罗服务器 2.x 快递中间件



我正在使用Apollo Server 2.x(不是Apollo Server Express)

我喜欢添加一些快速中间件

在这种情况下,我是否需要迁移以使用 apollo-server-express 才能添加 express 中间件?或者阿波罗服务器 2.x 可以容纳快速中间件吗

如果阿波

罗服务器 2.x,可以指出我如何才能将阿波罗服务器 2.x 与快速中间件一起使用的文档吗?

提前谢谢你

虽然apollo-server确实在后台利用了express,但它故意不提供配置其他中间件的方法。目的是让它对express的使用是透明的——它可以在未来使用 hapi 或其他库,而不会破坏现有的实现。如果需要将apollo-serverexpress集成,则应使用 apollo-server-express 。迁移很简单:

阿波罗服务器

const server = new ApolloServer({ typeDefs, resolvers });
const port = 4000;
server.listen({ port });

阿波罗服务器快递

const server = new ApolloServer({ typeDefs, resolvers });
const app = express();
server.applyMiddleware({ app });
const port = 4000;
app.listen({ port });