【发布时间】:2016-01-27 16:27:52
【问题描述】:
我已经构建了一个 ExpressJS 服务器,它对一组对象执行计算。该数组被放置在请求的主体(POST 请求)中我注意到,当我第一次启动服务器并发送请求时,我从计算中收到了预期的结果。现在,当我向服务器发送完全相同的请求(无需重新启动服务器)时,我会更快地收到响应。我认为是这种情况,因为 ExpressJS 可能正在缓存请求/响应。
我查看了 ExpressJS 文档以详细了解 ExpressJS 中的缓存是如何工作的,但找不到任何内容。有人可以解释当 ExpressJS 服务器接收到请求然后接收到完全相同的请求时缓存是如何工作的吗?有没有办法完全禁用缓存?
【问题讨论】:
-
我建议您首先查看浏览器的网络选项卡,看看浏览器是否正在缓存响应(因此在浏览器首次获取页面后不再询问您的服务器)。您的服务器可以根据应用于原始响应的标头来控制浏览器缓存设置。例如,服务器可以在任何单个页面上禁用浏览器缓存。
-
也可能是你的浏览器在做缓存。
-
我不相信它是浏览器。我一直在服务器上单步执行计算过程,在服务器发送响应之前响应已经不正确。
-
所以,您是说您的服务器代码有问题,但您没有向我们显示服务器代码。在这里,我们无能为力帮助您。请贴出相关代码。
标签: node.js caching express server