在中继GraphQL中,连接和列表都是类似数组的,但是它们有不同的特性。 我应该什么时候使用每个?
我开始使用relay-starter-kit并且通过Relay和GraphQL文档工作。 但是有不less地方是无法解释和神秘的。 我认真地阅读了大量关于所有这些事情的文件,但是对于下面的问题找不到任何令人满意的解释: 这个是来做什么的? 我把日志,但它甚至从来没有被称为: var {nodeInterface, nodeField} = nodeDefinitions( (globalId) => { var {type, id} = fromGlobalId(globalId); if (type === 'User') { return getUser(id); } else if (type === 'Widget') { return getWidget(id); } else { return null; } }, (obj) => { if (obj instanceof User) { return userType; } else if (obj […]
我试图了解GraphQL最适合在微服务体系结构中使用的地方。 关于只有1个作为API网关的GraphQL模式将请求代理到目标微服务并强制响应,存在一些争议。 微服务仍然会使用REST / Thrift协议来进行通信思想。 另一种方法是每个微服务有多个GraphQL模式。 拥有一个较小的API网关服务器,将请求路由到目标微服务,包含请求的所有信息+ GraphQL查询。 第一种方法 如果将1个GraphQL模式作为API网关,则每当您更改微服务合约input/输出时都会有一个缺点,因此我们必须在API网关端相应地更改GraphQL模式。 第二种方法 如果每个微服务使用多个GraphQL模式,那么在某种意义上说是有道理的,因为GraphQL会强制执行一个模式定义,并且消费者需要尊重微服务给出的input/输出。 问题 你在哪里发现GraphQL适合devise微服务架构? 你将如何devise一个可能的GraphQL实现的API网关?
GraphQL由一个types系统,查询语言和执行语义,静态validation和types自省组成,每个概述如下。 为了引导您了解这些组件,我们编写了一个示例来说明各种GraphQL。 – https://github.com/facebook/graphql Falcor允许您通过虚拟JSONgraphics将所有远程数据源表示为单个域模型。 无论数据在哪里,无论是在客户端的内存中,还是在服务器上的networking上,都采用相同的方式进行编码。 – http://netflix.github.io/falcor/ Falcor和GraphQL(在Relay中)有什么区别?