ApolloGraphQL如何与GraphQL相关?

时间:2017-11-28 12:44:22

标签: graphql apollo

我需要对GraphQL进行研究,这让我很困惑。

据我了解,ApolloGraphQL是一种基于GraphQL的框架/服务(就像ExpressJS与Nodejs相比,Laravel框架与PHP相比)

这是对的吗?

非常感谢

2 个答案:

答案 0 :(得分:3)

GraphQL是一种与数据交互的不同方式。在引擎盖下,它通过单个API端点工作 - 通常是/ graphql。并且有一个客户端工具graphiql来进行查询和执行突变。

Apollo是在客户端和服务器上实现GraphQL的框架。我所知道的大多数开发人员都使用Express-GraphQL来实现服务器部分,因为这是推荐的方式。他们使用Apollo客户端连接到Express-GraphQL服务器组件。

Stephen Grider在Udemy有一个精彩的课程,教授GraphQL和Apollo客户端。他在Apollo服务器上使用Express-GraphQL在服务器上实现GraphQL。

答案 1 :(得分:2)

GraphQL 一种语言,现在主要用作Node.js服务器上的let net = require('net'); net.createServer(function (socket) { socket.on('data', function (data) { const req = { url: '/controllername/method', method: 'get' }; const res = { _clientCallback: function _clientCallback(clientRes) { // TODO: do something useful with clientRes message = clientRes.body; if (clientRes.body && clientRes.body.message) { message = clientRes.body.message; } process.stdout.write(message); } } sails.router.route(req, res); }); }).listen(1338); (所以服务器端)

Apollo 是一个客户端库,用于使用GraphQL API

因此,对于流行的设置(express + GraphQL + Apollo),

  • express和GraphQL将执行服务器端
  • GraphQL API将公开API
  • Apollo将在客户端执行(例如在浏览器中)并将使用/graphql
  • 的API