Next.js 15 对 Get 请求默认缓存

使用 get 请求接口,出现登录态不对的问题,会请求到另外的账号数据,调试发现 GET 函数里的代码根本没被执行,鉴权又是放在 GET 函数体里的,导致了登录态不对的问题。 所以 别用什么 GET PUT 了,总用踩不完的坑,老实用 POST 请求就好。
Next.js 15 中 GET 请求的缓存机制:
- Next.js 15 默认会对 GET 请求进行缓存
- 这种缓存是自动的,不需要额外配置
- 缓存发生在服务器端,可以提高应用性能
可以通过以下方式控制缓存:
- 使用 cache: 'no-store' 禁用缓存
- 使用 revalidate 设置缓存时间
- 使用 tags 进行缓存失效
- 示例:
// 禁用缓存
fetch(url, { cache: 'no-store' })
// 设置缓存时间(例如 60 秒)
fetch(url, { next: { revalidate: 60 } })
- 注意事项:
- 缓存是自动的,但可以根据需要选择禁用或自定义
- 缓存机制有助于提高应用性能,减少服务器负载
- 对于需要实时数据的场景,建议使用 cache: 'no-store' 禁用缓存
版权声明:
作者:东明兄
链接:https://blog.crazyming.com/note/3252/
来源:CrazyMing
文章版权归作者所有,未经允许请勿转载。


共有 0 条评论