首页 > 解决方案 > Apollo-Server,如何与 SailsJS 一起使用?

问题描述

我不明白如何将 Apollo-Server 与Sails.JS( Expressbased) 之类的应用程序一起使用。

Apollo-Server 的自述文件 ( https://github.com/apollographql/apollo-server#express ) 指出Express应用程序需要此代码:

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

但是为什么?你如何使用它Sails.JS

为什么我们不能使用这个代码呢?:

let apollo = require('apollo-server').ApolloMiddleware
app.use( '/graphql', apollo({ typeDefs, resolvers }) );

我不是唯一一个遇到这个问题的人:为什么 Apollo Server 不是 Express 的中间件,而不是接受 Express 作为中间件的服务器?

标签: expresssails.jsgraphqlapolloapollo-server

解决方案


我不建议apollo-server与 Sails.JS 一起使用。如果您要做类似的事情,我建议graphql直接使用节点的库并添加您自己的端点。apollo-server只是试图做太多 Sails 已经为你做的事情,反之亦然。它并没有真正做很多你不能用你自己的中间件轻松插入的事情。对不起,祝你好运。


推荐阅读