javascript - 静态图像文件在node.js/express中不可见

标签 javascript node.js express cloud9-ide

以下代码是在 Node.js 上的 Express 中提供静态文件的代码示例。如果我向服务器询问 .css 文件,则没有问题,但如果我询问 jpg 或 png 等图像,它会加载一个白色页面(没有/GET 错误或任何错误,一个简单的白色页面)。在浏览器的开发人员工具中,我看到以下警告:1资源解释为文档,但使用 MIME 类型 image/jpeg 传输。我该如何解决这个问题?

我使用的是cloud9ide和express 2.4.6

var express = require("express"),
    app = express.createServer();

app.use(express.static(__dirname + '/static'));

app.get('/', function(req, res){
    res.send('Hello World');
});

app.listen(process.env.C9_PORT);

最佳答案

看起来有问题的文件不是 JPEG 格式。您可以使用 wgetcurl 或类似工具将该 URL 保存为文件并在文本编辑器中打开该文件吗?

有效的 JPEG 文件应该看起来像二进制垃圾,并且应该在开头附近有“JFIF”签名字符串(我认为字节偏移 6)。

该文件可能包含错误消息而不是有效的 JPEG 数据。

关于javascript - 静态图像文件在node.js/express中不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7506797/

相关文章:

javascript - 如何查找函数中定义的变量

javascript - 如何使用 click() 和 change() 做同样的事情

node.js - 来自 React 的上传图片请求

javascript - 仿谷歌地图mapTypeControl自定义控件

javascript - 日期和对象的 console.log 格式

node.js - 与 expect.js 设置等价

javascript - Passport.js:LocalStrategy 如何访问用户信息?

node.js - 无法在node js中使用app.delete删除数据

node.js - 如何使用express检查 Node 中的jwt登录

javascript - 无法弄清楚为什么页面加载在底部? Angular UI-Router 自动滚动问题