使用纯JavaScript / JSON的GraphQL功能

时间:2018-04-05 06:30:12

标签: node.js mongodb graphql express-graphql

我试图了解GraphQL的优点。我已经阅读过有关减少端点数量和服务器响应复杂性的文章,但似乎单独使用JS可以获得相同的结果。

这是一个数据对象的示例,可以将其作为JSON发送到具有MongoDB的节点服务器。这将是客户端正在检索用户信息的游戏应用程序的示例:

let data = {
     db: "users", 
     params: {_id: "xxxxx"}, 
     fields:  ["username", "level"],
     games: 
           {
               db: "games", 
               params: {userID: "xxxxx"},
               fields: ["opponent”]
           }
}

在这个例子中,db,params和fields将是标准键,并且游戏就像是用于检索用户游戏的特定目的的特殊键,但是,游戏对象的语法将遵循相同的标准格式作为整体数据对象。

然后在服务器上,Mongo查询看起来像这样:

db.collection(data.db).find(params)

然后以某种标准化的方式过滤掉无关的Mongo字段并回复客户端。

我是JS的初学者,但我认为你也可以根据某些特殊键(例如上面的“游戏”)是否包含在数据对象中来链接承诺。

这似乎与GraphQL实现了相同的好处,复杂性更低。 GraphQL还有哪些其他好处,一个简单的JS等价物没有?

0 个答案:

没有答案