问题标签 [apollo-server]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
738 浏览

graphql - Apollo 订阅解析器永远不会激活?

我的组件正在调用订阅查询,但由于某种原因未访问订阅解析器:其中的断点从未被激活。然而在客户端我得到 GraphQL 订阅错误:

“订阅必须返回异步迭代。收到:未定义”

这可能是什么原因造成的?

提前感谢所有人提供的任何信息。

订阅查询

解析器

零件

0 投票
1 回答
1583 浏览

node.js - Graphql 查询返回空值(Apollo 服务器)

我以编程方式创建了一个模拟来测试我的查询,但它只返回一个空值我做错了什么。我正在使用休闲库为我的模拟生成值

这是我的文件:

index.js

schema.js

模拟.js

当我运行以下查询时:

它返回:

所以我尝试了:

这返回

我究竟做错了什么

0 投票
1 回答
78 浏览

graphql - aor-simple-graphql-client:加载数据时出错

我正在尝试将 aor-simple-graphql-client 与我的阿波罗服务器一起使用。我有一个元素很少的数组,并且管理员在休息时只多次显示最后一个元素。当我使用 graphiql 执行相同的请求时,我可以看到所有元素。

这是我的仓库:https ://github.com/JeresB/cuistot-aor 这里有一张图片来解释错误。 在此处输入图像描述

0 投票
0 回答
281 浏览

node.js - node.js 中的服务器崩溃

我正在使用节点服务器处理 graphql(Apollo)。如果大约 15 分钟内没有请求到达服务器,我会遇到服务器崩溃的问题。我在控制台中收到以下错误

我的配置中是否缺少任何特定配置?

0 投票
0 回答
403 浏览

node.js - 在使用由 neo4j 数据库支持的 apollo graphql 服务器时,我应该如何编写解析器?

我正在使用 neo4j dB,并且我已经设置了 apollo graphql 服务器(使用 graphql-server-express)。假设我的模式有 3 种类型,即“国家”、“州”和“人”,其中 1 个国家可以有多个州,1 个州可以有多个人。

//示例schema.js

那么,我应该如何在 resolver.js 文件中编写我的解析器函数,以帮助我从上述任何类型中正确获取数据?

我尝试在 resolver.js 文件中使用以下查询(使用 Cypher 查询语言查询 Neo4j 数据库),但出现类型错误,我无法修复它。

//示例resolver.js 文件。

0 投票
2 回答
9298 浏览

graphql - 如何使用 graphql-tools 使用或解析枚举类型?

我在文档中的任何地方都找不到graphql-tools应该如何使用enum提供给makeExecutableSchema. 有人知道这是怎么做到的吗?

示例代码:

解析器Color会是什么样子?

0 投票
1 回答
423 浏览

graphql - 我有什么理由在 GraphQL 结果中取回查询名称?

makeExecutableSchema与以下查询定义一起使用:

以及以下解析器:

当我查询时:

我在 GraphiQL 中得到以下结果:

那么,有什么理由让我在结果中得到这个“getAccount”?

0 投票
2 回答
3181 浏览

apollo-server - 在生产中禁用 graphiql

如何在生产中禁用 graphiql 但仍然能够在开发中访问它?

使用 express-graphql 我们可以做类似的事情

使用阿波罗服务器,我的设置是

而且我找不到传递给 NODE_ENV 以启用/禁用 graphiql 的方法。

0 投票
1 回答
2662 浏览

node.js - 合并 Apollo 服务器的 GraphQL 解析器不使用 Object.assign()

我正在为 GraphQL API 模块化我的模式,并尝试在不使用任何 3rd 方库的情况下合并解析器。

Lodash.merge()有没有一种简单的方法可以在没有或等效的情况下做到这一点?

Apollo 文档说要使用像 Lodash 这样的库来merge()模块化解析器。(http://dev.apollodata.com/tools/graphql-tools/generate-schema.html#modularizing

问题似乎是,解析器本质上包含作为属性的函数,所以当我通过访问它们时它们似乎被省略Object.assign()JSON.stringify()

如果我 console.log 他们,我看到:{"Query":{},"Mutation":{}}

以下是其中一个解析器的样子:

让我们假设还有一个几乎相同的名为widgetResolvers.

这是一个功能齐全的代码块:

这是我想要实现的目标:

我还没有加载使用休息传播的能力(https://babeljs.io/docs/plugins/transform-object-rest-spread/)。我怀疑它不会因为同样的原因Object.assign()不起作用。

哦,这就是我怀疑这种合并不起作用的原因:为什么 JSON.stringify 不显示作为函数的对象属性?

0 投票
1 回答
1457 浏览

graphql - 在不启动服务器的情况下生成 json 模式?

是否有将模块化的 graphql 模式转换为 json 模式的独立工具?

我有一个使用 apollo-graphql 和 graphql-tools 的 graphql 服务器makeExecutableSchema。它遵循此处描述的模式

如何创建schema.json表单typeDefs或者schema


我需要一个 json 模式来使用relay-compileror apollo-codegenapollo-codegen包括此脚本以从 graphql 服务器创建模式...

...但我想在自动构建中创建模式并运行 apollo-codegen。我不想创建服务器。


我会将此作为答案提交,但该问题已被标记为离题¯\_(ツ)_/¯

@daniel-rearden 的回答为我指明了正确的方向。makeExecutableSchema返回 aGraphQLSchema所以可以使用graphql'sprintSchemaintrospectionQuery来获取模式的 json 或 graphql 语言表示。