问题标签 [apollostack]

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 回答
603 浏览

graphql - ApolloGraphQL -- ReadQuery `Field Not Found` 错误?

我的 readQuery 正在返回一个field not found错误,即使该字段似乎存在于缓存中。

询问

缓存解析器

READQUERY CALL,更新中

错误

查看错误消息,ROOT_QUERY 对象上似乎存在一个instant_message具有目标用户 ID 的对象,但我收到此错误。

我该如何纠正?

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

0 投票
2 回答
1765 浏览

react-apollo - 如何在没有突变的情况下从不同的组件重新获取查询?

假设我有一些带有查询的组件可以获取一些东西:

然后我导航到一个过滤器屏幕,我可以在其中设置一些过滤器来调整结果。

  • 这个屏幕不是前一个组件的子组件,所以我不能简单地通过 props 传递 refetch。
  • 按“保存过滤器”不是突变(它不会访问服务器并更改数据库,而只是更改传递给上一个查询的局部变量),所以我没有 refetchQueries。

有没有一种干净的方法可以让我重新获取上一个屏幕上的查询?目前,我只是将它们存储在全局变量中,但我想有一些方法可以将查询从存储中拉出并使用新变量重新获取它?

0 投票
1 回答
1838 浏览

javascript - ApolloError.js:43 Uncaught (in promise) 错误:网络错误:无法读取未定义的属性“突变”

您好,当我使用 apollo-link-state 调用本地状态的突变函数时,我遇到了这些错误。

我也有节点模块的图片问题,现在无法解决。

请任何帮助。

------节点问题apollo-link-http-common

- - - 代码 - - - -

------index.js

--------updatePagPrincipal.js

--------FromLogin.js

0 投票
1 回答
693 浏览

graphql - apollo-client:如何从缓存中获取反向关系?

我有一个形状的graphql查询响应

这将我table的.legInMemoryCache

但是,如果我的应用程序leg从缓存中检索 a 并且需要知道相应的table,我将如何找到它?

我的两个想法是

  • 当查询响应进入时为每个添加一个table道具leg- 不确定是否/如何工作(我有多个查询和突变包含具有上述形状的 graphql 片段)
  • 有一个合适的cache redirect,但我不知道如何在不搜索所有内容tables的情况下做到这一点leg

apollo 是否提供任何适合实现这种反向查找的功能?

更新:澄清一下,leg有一个table道具,但由于在解析该道具之前我已经在客户端中获得了信息,所以我想在客户端而不是服务器端解析该道具。

0 投票
1 回答
4613 浏览

apollo - Apollo Server - 关于缓存/数据源选项的困惑

文档(https://www.apollographql.com/docs/apollo-server/features/data-sources.html#Using-Memcached-Redis-as-a-cache-storage-backend)显示如下代码:

我想知道如何cache使用该密钥,考虑到缓存似乎实际上是自定义实现的MoviesAPI(),然后通过context.dataSources.moviesAPI.someFunc(). 例如,假设我想为 SQL 数据库实现自己的缓存。它看起来像

whereSQLCache有我自己的连接到RedisCache类似的功能:

所以这意味着我拥有RedisCache关键ApolloServer cachedataSource实施。显然,RedisCache在实现中使用了dataSource,但是那个ApolloServer cache键到底是做什么的呢?

同样在客户端,示例大多显示使用InMemoryCache而不是 Redis 缓存。客户端 Apollo 缓存应该是与服务器缓存不同的缓存,还是应该RedisCache在两个地方都使用相同的缓存?

0 投票
1 回答
1211 浏览

apollo - Apollo 客户端和服务器中的自动持久查询无法正常工作,出现 PERSISTED_QUERY_NOT_FOUND 错误

我尝试在基于 Graphql 的系统中使用高度宣传的自动持久查询来获得性能优势,但花了三天后我无法解决以下问题。如果您尝试查找,Apollo 文档有很多关于这个主题的 404 页 -

在客户端:

我用了

客户端依赖:

在服务器上:

服务器依赖:

观察:

  1. 从客户端我看到 sha1 正在发送到服务器。

变量=%7B%7D&extensions=%7B%22persistedQuery%22%3A%7B%22version%22%3A1%2C%22sha256Hash%22%3A%22fd4c5f1ae3sfsf6ee0f0710b8d303a9703db7a6708b401278e2fd664f56f4e9176%7176

  1. 服务器正在 redis 缓存中寻找 sha1 但找不到
  2. 服务器返回 PersistedQueryNotFound","MsgCode":"PERSISTED_QUERY_NOT_FOUND 错误给客户端

之后什么都没有发生,redis缓存中没有执行设置操作并不断收到PERSISTED_QUERY_NOT_FOUND错误

问题: APQ​​ 不工作,不断收到 PersistedQueryNotFound 错误

0 投票
1 回答
324 浏览

graphql - GraphQL:字段解析器未在订阅查询中触发?

我有一个订阅查询,MessageFolder_Subscription看起来像这样:

询问

这是它的架构:

架构

这是我做解析器的方式:

旋转变压器

当我改变相关项目时,MessageFolder_Subscriptionpubsub 会按预期触发查询。追溯,我可以看到它返回true

remoteUserData但是由于某种原因,字段解析器MessageFolder_Subscription永远不会触发。

我错过了什么?

0 投票
0 回答
534 浏览

javascript - 如何使用托管联合设置 Apollo 网关?

在阅读了有关托管联合的 Apollo 文档后,我完全按照文章中的描述配置了我的 Apollo 网关。基本上我没有将任何东西传递给ApolloGateway构造函数。它ENGINE_API_KEY在我的 .env 文件中提供,应该由 ApolloGateway 实例获取。

  1. 这个第一个警告是什么意思?如果没有可用的架构更新,该消息是否正常和预期?

  2. 为什么即使在 apollo-server sais Gateway 成功加载架构之后,GraphQL 架构仍未定义。?

我知道在传递给另一个函数或构造函数之前未解决承诺的其他情况下会出现这种冲突的输出。在将所有服务传递给 ApolloServer 之前,我是否必须以某种方式等待 ApolloGateway 获取所有服务?我应该如何最好地做到这一点?

0 投票
0 回答
77 浏览

apollo-server - 如何将 Apollo 联合模式中的扩展类型写入其数据库?

如何在联合模式中处理突变?如果我有帐户服务和课程服务,课程服务可能会将用户类型扩展一些字段。使用该函数如何为查询解析这些字段的方式有__resolveReference()据可查,但是,如果涉及突变,我真的找不到任何东西。在不知道用户拥有的所有字段的情况下,我应该如何处理从帐户服务到其数据库的写入?我想象一个看起来像这样的突变:

现在哪个服务负责将course字段写入用户数据库?课程微服务也有自己的数据库,不应该向用户数据库写入任何内容。

这仍然是 Apollo 模式联合未解决的问题吗?

0 投票
0 回答
954 浏览

apollo - 预防:查询进行时存储重置(未在链接链中完成)

我在我的 Apollo Client 代码中随机得到这个。我正在使用使用 isMounted 标志包围所有 setState 的反模式,以防止在卸载组件或用户离开页面时尝试设置状态。但我仍然得到这个

是什么赋予了?