Node.js表示强制客户端跳过缓存(刷新)

时间:2017-06-27 15:11:33

标签: javascript node.js express caching

我在node.js / express中发送文件,如下所示:

res.header("Content-Type", mime.lookup(file));
res.sendFile(file);

在服务器端,我可以检测到该文件是否已更改,我想强制客户端仅在这种情况下跳过缓存。

类似的东西:

res.header("Content-Type", mime.lookup(file));
if (fileHasChanged(file))
  res.header("some-header-telling-client-to-skip-cache", "some-value");
res.sendFile(file);

我该怎么做?

1 个答案:

答案 0 :(得分:0)

看起来,您需要将'Cache-Control': 'no-cache'添加到sendFile()选项中:

const options = {
  headers: {
    'Cache-Control': 'no-cache',
  }
};

res.sendFile(file, options, (err) => {
  if (err) {
    next(err);
  } else {
    // Success
  }
});