如何使用node.js获取图像文件的字节大小

时间:2012-03-12 11:10:24

标签: node.js

我需要使用node.js来获取网页中图像文件的大小。为此,我使用了一些节点模块,但它提供了所有其他资源的大小,如js文件,html大小等。所以如何获取请求的大小(请求图像文件)? 。如何查找图像文件的加载时间?

2 个答案:

答案 0 :(得分:5)

我假设您尝试通过http获取图像的文件大小而不是图像尺寸。 (如果我弄错了,请纠正我)

您可以简单地向资源发送HEAD请求,并查看Content-Length标头:

var http = require('http');

var req = http.request({ 
    host: 'www.gravatar.com',
    port: 80,
    path: '/avatar/b9da20552a71c4d3c4c6dc2d55418cf2',
    method: 'HEAD' }, 
    function(res) {
        console.log("Size: " + res.headers['content-length']);
    }
).end();

答案 1 :(得分:0)

这篇文章似乎对另一个用户有帮助,关于获取文件的字节大小的方法。您可以忽略有关获取尺寸的部分。

  

Determining image file size + dimensions via Javascript?

至于另一个问题,查找加载时间,这可能有效:

var obj = new Image();
obj.src = "imglocation.png";
for (i = 1; i != -1; i++) {
     if (obj.complete) { /*do stuff*/ } }

可能有效。我不是JavaScripter,所以我并不适应它。 虽然这不是Node.js,但我确定你可以改变代码以便轻松使用它吗?