首页 > nodejs 非utf8编码文件下载 得到的文件大小错误 结果异常

nodejs 非utf8编码文件下载 得到的文件大小错误 结果异常

我用express搭建了一个node的后台
把file.dat文件放在/public/files目录下
public用express的route方法设置了公开路径
这个目录下的文件在get请求下会发送文件响应

app.route('/:url(files|images)/*')
    .get((req, res) => {
        res.sendFile(path.resolve(app.get('public') + req.url));
    });
    

现在遇到的问题是 file.dat 这种格式的二进制文件 原文件是1.8M大小,从前端请求响应的文件是 3.1M大小。

我尝试了将静态文件放在静态公开目录,前端直接通过url下载,不做拦截,也不用sendFile的方法,纯静态资源请求,也是这样。文件编码是 latin1。 服务器环境是linux debian,nginx 1.6.2。 node 4.4.3稳定版。

我想知道文件请求响应的过程中,哪些地方会引起数据包改变。还有咋能解决这个问题。

【热门文章】
【热门文章】