swr,服务器会缓存结果,在后台重新验证过期条目,并在每次读取时返回最新数据。
所有缓存 API 仅限服务端使用,并且需要 LangGraph Agent Server 运行时。值必须可序列化为 JSON。
swr 需要 Agent Server 运行时 v0.7.79 或更高版本,目前处于 测试阶段。
cache_get 和 cache_set 需要 v0.7.29 或更高版本。快速开始
传入一个键和一个异步加载器函数。如果缓存值可用,swr 会返回该值;否则会调用加载器来获取值:
swr 会等待 load_config() 完成并缓存结果。后续调用会立即返回缓存值,并在后台重新验证。
配置新鲜度
控制缓存值在多长时间内被视为新鲜,以及何时过期:重新验证的工作方式
与 Pydantic 模型结合使用
传入model 参数,即可自动序列化和反序列化 Pydantic 模型:
swr 在存储前会调用 model_dump(mode="json"),读取时会调用 model.model_validate()。
缓存身份验证凭据
你可以在自定义身份验证处理器中缓存凭据验证,避免每次请求都访问身份提供商:validate_and_fetch_user 执行完成。
查看缓存状态
swr 返回一个包含值和缓存状态的 SWRResult 对象:
.mutate() 可以更新缓存值或强制重新验证:
低级缓存 API
如果只需要简单的获取/设置缓存而不需要重新验证,可以直接使用cache_get 和 cache_set:
cache_get
None。
cache_set
后续步骤
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

