带有参数的Graphql订阅无法正确更新缓存

时间:2018-10-24 13:53:02

标签: javascript graphql subscription

因此,首先我们要记住graphql有一个缓存,并将每个查询存储到它的缓存中。这意味着每次第一次执行查询时,它都会存储到缓存中,并且该查询的下一次调用将直接返回缓存信息。

这会引起问题,如果有新数据,它将永远不会真正更新内容。这就是实时网站的订阅来源。订阅将新数据从数据库返回到客户端,以便它可以更新自身而不必刷新其网页。

现在,我使用订阅的方式是在Android或iPhone上制作“ SMS”页面。我必须实时接收来自用户的消息,问题是订阅似乎并没有考虑订阅的参数。

这是我的订阅:

enter image description here

这是我的前端订阅

enter image description here

在订阅更多内容的底部,您可以看到getSMSFromClient正在使用prev.getSMSFromClient + newSMS更新。

但是,这将使用getSMSFromClient修改每个缓存数据,因此,即使与电话无关,也要修改所有用户对话...

0 个答案:

没有答案