【问题标题】:Where to check Apollo server express GraphQL cache?在哪里查看 Apollo 服务器 express GraphQL 缓存?
【发布时间】:2023-03-10 05:31:01
【问题描述】:

我正在使用 Apollo Sever Express 构建 GraphQL 端点。根据他们的文档,我在我的 typeDefs 架构中添加了 @cacheControl 指令。但我不确定它是否有效,我该如何验证或测试这种情况?我在 localhost:3000/graphql 运行服务器(GraphQL ide 已打开)。

代码-

type Post {
 id: ID!
 title: String
 votes: Int @cacheControl(maxAge: 30)
}

还在解析器中尝试了动态的,但是我应该如何/在哪里检查呢?

【问题讨论】:

    标签: node.js graphql apollo-server


    【解决方案1】:

    这取决于你追求什么。如果您尝试使用 HTTP 缓存,您应该查看网络调用并查看它是否设置了 cache-control 响应标头。如果您希望缓存整个查询,我只需在解析器中 console.log 即可查看它是否正在执行。

    【讨论】:

    • 如何设置用于缓存底层 REST API 的标头?
    • 我认为没有内置任何东西。我知道 Apollos DataSource 类使用底层标头在内部缓存,但我认为这不会转发标头。我会从 REST 响应中读取标头,并以编程方式在 apollo 中设置缓存控制。
    • 是的@peternyc,我尝试使用 RESTDataSource 设置标题,但没有帮助。你能提供你提到的第二点的代码参考吗?
    猜你喜欢
    • 2021-05-09
    • 2019-06-13
    • 2018-12-08
    • 1970-01-01
    • 2017-12-09
    • 2016-08-31
    • 2019-07-23
    • 2019-02-03
    • 2020-12-25
    相关资源
    最近更新 更多