NestJS开发时如何禁用缓存?解决301重定向缓存问题
解决NestJS移除@Redirect()后仍重定向的问题
问题原因
你使用的是301永久重定向,浏览器会将这类重定向规则永久缓存,哪怕你移除了代码里的@Redirect()、甚至停止了NestJS服务,浏览器依然会自动执行重定向操作——这是浏览器的缓存机制导致的,和NestJS本身无关。
解决方案
清除浏览器缓存或强制刷新
- 打开浏览器开发者工具(F12),切换到「Network」标签,勾选「Disable cache」选项,再刷新页面;
- 用强制刷新快捷键:Windows/Linux按
Ctrl+Shift+R,Mac按Cmd+Shift+R,绕过缓存重新请求; - 也可以直接清除当前站点的缓存:在浏览器设置中找到「清除浏览数据」,选择「缓存的图片和文件」,时间范围选最近1小时即可。
开发阶段优先用302临时重定向
302是临时重定向,浏览器不会永久缓存规则,后续修改代码后刷新就能立即生效,适合开发调试:@Get('/hi') @Redirect('https://nestjs.com', 302); hi() { return 'hi'; }确认NestJS服务已加载新代码
如果是手动启动的服务,修改代码后必须重启服务才能生效;开发时建议用nest start --watch命令,代码变更后会自动重启服务并加载新代码。
内容的提问来源于stack exchange,提问作者kan
相关产品推荐
相关产品推荐

