express - 在浏览器端缓存 Express REST 路由
问题描述
有没有办法发送浏览器,他应该缓存响应/正文(json)几分钟/小时/天?
我想减少服务器请求和一个内容很少更改(可能每周一次)的特定路由。这也将减少客户端的流量。
我试过:
res.set('Cache-Control', 'public, max-age=6000');
res.set('Expires', new Date(Date.now() + 60000).toUTCString());
res.set('Prgama', 'cache');
但 chrome 忽略了这一点,但也许那是错误的。我一无所知,谷歌还没有帮助。
最终结果应该类似于(Chrome 网络选项卡):
- 第一个客户端请求:状态码 200 OK
- 第二个客户端请求:状态代码正常(来自磁盘缓存)等。
时间到期后,状态代码 200 OK(没有来自磁盘缓存)像静态文件(图像)一样工作。
我只找到服务器端缓存,但这不会减少对后端的 GET 请求。
解决方案
推荐阅读
- wordpress - 在自定义帖子类型上添加仅限管理员的评论框
- laravel - 如何过滤 Laravel Nova 选择字段的选项
- reactjs - 刷新页面时出现页面未找到 404 错误..................我在 git hub 上部署了我的应用程序
- ruby-on-rails - 时区差异
- javascript - D3js 教程没有显示任何图表并且控制台中没有错误
- import - lua 在编译期间是否执行“require”?
- r - 通过 bash 执行 R 脚本时仅加载一次 R 包
- c# - Task.Run 不运行方法?
- apache-flink - flink 应用程序在使用来自 kafka 的消息后停止
- c# - 如何在 ASP.NET Core 上实现每个租户的数据库策略