我正在使用NodeJs和Express。我有一个公共目录,其中包含许多对客户来说必不可少的东西,例如图片。
当有人登录我的服务器时,我的快速公共目录中包含的所有内容都会转移到客户端吗?或者它只在首次登录时发生一次,然后仅在转移的内容之后转移?
我在公共目录中有很多很多图片,而且我现在有带宽问题。任何解决方案?
感谢。
答案 0 :(得分:3)
将发送到客户端的唯一文件是具体请求的文件(除非您使用清单文件)。每次请求时都会重新发送这些文件。 有一些方法可以防止文件被不必要地重新发送,即使用缓存控制。 Express框架允许您通过设置Cache-Control标头相当容易地完成此操作。例如:
var oneDay = 86400000;
app.use(express.static(__dirname + '/public', { maxAge: oneDay }));
您可能还想考虑压缩输出。
app.use(express.compress());
这两个例子都来自这篇博文:http://blog.modulus.io/nodejs-and-express-static-content