首页 > 解决方案 > Lambda 上的 GraphQL 查询在突变后没有返回一致的数据(起初)

问题描述

我在 Node.js 中有一个后端项目,它在 AWS Lambda 中使用 CloudFront 和 PostgreSQL 数据库以及 Mikro-ORM 运行 Apollo Server 无服务器。执行突变以注册用户并返回 JWT。使用后者,我可以从数据库中查询用户的数据并返回。

当我运行另一个突变时,问题就开始了,即更新我刚刚创建的同一个用户。数据在数据库中正确更新,并再次运行查询(以获取用户信息)我可能会或可能不会获得正确的数据。假设我更新了用户名。首先查询它可能会返回更新后的名称,但稍后执行几个(或数十个)查询会返回null相同的字段。

一段时间后,查询每次都给我正确的数据。我在 Apollo 客户端上禁用了缓存,并且还缺少 CloudFront 缓存。有谁知道这是否是技术堆栈中的正确行为,我应该实现其他东西,还是我做错了什么?

标签: node.jsaws-lambdagraphqlamazon-cloudfrontapollo

解决方案


推荐阅读