[英]Node.js server don't show image
我在这里遇到问题,我正在使用node.js框架来处理对我的index.html的请求。 index.html文件包含一些图像,但是对我的用户而言不显示! 我正在阅读index.html和.png这两个文件。 你们能帮我吗? 这是我的server.js:
var app = require('http').createServer(handler)
var io = require('socket.io').listen(app)
var fs = require('fs')
app.listen(4000);
function handler (req, res) {
fs.readFile(__dirname + '/index.html',
function (err, data) {
if (err) {
return res.end('Error loading index.html');
}
res.end(data);
});
fs.readFile(__dirname + '/blackq.png', function (err, data) {
if (err) {
return res.end('Error loading index.html');
}
res.end(data);
});
}
提前表示感谢!
仅用于概念验证的快速解决方案可能是这样的:
在html文件中,确保已正确完成img标签。
<img src="/your_image.jpg" alt="your_image" style="width:304px;height:228px;">
在您的node.js服务器文件中,添加
if (req.url == "/index.html") {
//res.end your html file
return;
}
//to display image
if (req.url == "/your_image.jpg") {
var img = fs.readFileSync('./your_image.jpg');
res.writeHead(200, {'Content-Type': 'image/jpg' });
res.end(img, 'binary');
return;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.