代码之家  ›  专栏  ›  技术社区  ›  RainingChain

Express公用目录和带宽

  •  0
  • RainingChain  · 技术社区  · 12 年前

    我正在将NodeJ与Express一起使用。我有一个公共目录,其中包含许多对客户端至关重要的东西,例如图片。

    当有人登录到我的服务器时,我的express公共目录中包含的所有内容都会转移到客户端吗?还是只发生一次,在第一次登录时,然后只传输更改后的内容?

    我在公共目录中有很多很多图片,现在我有带宽问题。有什么解决方案吗?

    谢谢

    1 回复  |  直到 12 年前
        1
  •  3
  •   markle976    12 年前

    将发送到客户端的唯一文件是专门请求的文件(除非您使用的是清单文件)。每次请求这些文件时,都会重新发送这些文件。 有一些方法可以防止文件被不必要地重新发送,即使用缓存控制。Express框架允许您通过设置“缓存控制”标头来轻松完成此操作。例如:

    var oneDay = 86400000;
    app.use(express.static(__dirname + '/public', { maxAge: oneDay }));
    

    您可能还需要考虑压缩输出。

    app.use(express.compress());
    

    这两个例子都来自这篇博客文章: http://blog.modulus.io/nodejs-and-express-static-content