Javascript 正文中的节点HTML

Javascript 正文中的节点HTML,javascript,html,http,node.js,Javascript,Html,Http,Node.js,我编写了一个简单的HTTP服务器,提供一些HTML。 代码如下: var http = require('http'); http.createServer(function(req, res) { res.writeHeader(200, {"Content-Type": "text/html"}); var html = '<DOCTYPE!>' + ' <html>' + ' <head>' + '

我编写了一个简单的HTTP服务器,提供一些HTML。 代码如下:

var http = require('http');

http.createServer(function(req, res) {

  res.writeHeader(200, {"Content-Type": "text/html"});

  var html = '<DOCTYPE!>' +
    '  <html>' +
    '    <head>' +

    '      <title>' +
    '        Test page' +
    '      </title>' +

    '    </head>' +
    '  <body>' +

    '    <p>' +

    '      This is a test page !' +

    '    </p>' +

    '  </body>' +
    '  </html>';

  res.write(html);

  res.end();

}).listen(8080);
var http=require('http');
http.createServer(函数(req,res){
res.writeHeader(200,{“内容类型”:“text/html”});
var html=''+
'  ' +
'    ' +
'      ' +
“测试页”+
'      ' +
'    ' +
'  ' +
“”+
“这是一个测试页面!”+
“

”+ ' ' + ' '; res.write(html); res.end(); }).听(8080);
生成的HTML页面如下所示:

<html>
<head>
</head>
<body>
<doctype!>
<title> Test page </title>
<p> This is a test page ! </p>
</doctype!>
</body>
</html>

测试页
这是一个测试页面

因此,我的问题如下:

<html>
<head>
</head>
<body>
<doctype!>
<title> Test page </title>
<p> This is a test page ! </p>
</doctype!>
</body>
</html>
  • 为什么html的主体中包含html“字符串”
  • 除了使用模板引擎(jade)之外,HTML中还有缩进吗
最后一个问题有点不同:

  • 如果我有一个名为
    index.html
    的页面,它只显示
    img.jpg
    。我怎么知道用户对
    img.jpg
    的请求与
    index.html
    相关? 我所说的“相关”是:“那
    img.jpg
    index.html
    的一个链接/依赖项。”
提前谢谢你

为什么html的主体中包含html“字符串”

那是因为
无效。应该是:

<!DOCTYPE html>

这实际上不是生成的HTML。你的服务器所提供的HTML正是你认为它所提供的。。。浏览器发现该HTML有问题

浏览器不知道什么是
,因此它假定它是某种任意标记。当浏览器看到任意标记时,它会假定该标记位于主体中。使用不平衡标签错误纠正功能,它将关闭身体末端带有
标签


您打算使用的是
或者更可能的是,

实际上,
在技术上也是无效的HTML(根据W3C验证程序)。如果要使用
“标记”,则需要指定类型。哦,好的。谢谢你的快速回答!你对另外两个问题有什么想法吗?你应该把你的“最后一个问题”作为一个单独的问题贴来提问。这是一个完全不同的主题。您能否详细说明正文部分中包含的
html“字符串”以及非手工缩进?非常感谢您的长篇大论回答!:D