我在cloud9 IDE中进行了以下设置。
项目根文件夹
当我运行服务并在浏览器中点击URL时,HTML将以“Hello World!”呈现。显示为。但是图像没有被渲染。 img标签中的src =“”属性应该是什么。
图像文件的路径应该是什么?谢谢。
HelloHtml.js
var http = require('http');
var fs = require('fs');
http.createServer(function(request, response) {
response.writeHead(200, {
'Content-Type': 'text/html'
});
fs.readFile('./Hello.html', function(err, data){
if(err) throw err;
response.end(data);
});
}).listen(process.env.PORT);
console.log('Hello World HTML Service has started.');
的Hello.html
<html>
<head>
<title>Node JS</title>
</head>
<body>
<h2>Hello world!</h2>
<img src="Penguins.jpg" />
</body>
</html>
答案 0 :(得分:1)
您无法处理代码中任何位置的静态文件,无论如何都只是提供'hello.html'文件:
http.createServer(function(request, response) {
response.writeHead(200, {
'Content-Type': 'text/html'
});
fs.readFile('./Hello.html', function(err, data){
if(err) throw err;
response.end(data);
});
}).listen(process.env.PORT);
根据请求网址制作路由方案,或者从此处使用一些静态文件服务器:
https://github.com/joyent/node/wiki/modules#wiki-web-frameworks-static
我建议你看一下Express,它还有路由处理:expressjs.com