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稳定版。
我想知道文件请求响应的过程中,哪些地方会引起数据包改变。还有咋能解决这个问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论