You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js启动HTTP服务后访问localhost:3000无内容,原因是什么?

问题修复:Node.js HTTP服务无响应/内容不显示

你的代码里有两个关键错误导致页面无法正常显示内容:

  • Content-Type 头拼写错误:你把正确的 text/html 写成了 test/html,浏览器无法识别这个无效的内容类型,因此无法正确解析返回的内容。
  • HTML标签使用了HTML实体而非直接标签:代码里的 &lt; 和 &gt; 是HTML转义实体,在JavaScript字符串中应该直接使用 < 和 >,否则浏览器会把这些实体当作纯文本处理,而不是解析为HTML标签。

修正后的代码如下:

const http = require('http');

const server = http.createServer((req, res) => {
  console.log(req.url, req.method, req.headers);
  // process.exit();  // 保持注释状态,否则服务处理完第一个请求就会终止
  res.setHeader('Content-Type', 'text/html'); // 修正内容类型拼写
  res.write('<html>'); // 直接使用HTML标签
  res.write('<head><title>My first page</title></head>');
  res.write('<body><h1>Hello from my Node.js Server</h1></body>');
  res.write('</html>');
  res.end();
});

server.listen(3000);

修复后重启服务,访问 localhost:3000 就能看到预期的页面内容了。另外注意不要启用 process.exit(),否则服务会在处理第一个请求后直接终止,后续请求无法得到响应。

内容的提问来源于stack exchange,提问作者Muhammad Wajeeh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 16:45:54