本文详细介绍如何使用 Node.js 的 http 模块搭建本地服务器。通过 require 加载模块,利用 createServer 创建服务实例,并在监听端口 8000 后处理 GET 请求。文中解析了 response.writeHead 设置响应头及 response.end 结束响应的关键步骤,演示了从代码保存到命令行启动再到浏览器访问的完整流程,帮助初学者快速掌握 Node.js 基础网络编程。
Node.js 服务器搭建概述
接下来将逐步引导读者掌握 Node.js 的核心用法,包括如何构建服务器、处理 GET 与 POST 请求以及连接数据库等操作。
本节重点演示如何搭建服务器并在页面中输出 Hello World 内容。
Hello World 代码实现与解析
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问 node.js bug,第二次访问/favicon.ico
console.log('访问');
response.write('hello,world 世界');
response.end();//不写则没有http协议尾
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
/*
启动服务
cmd下执行:
node 1_helloworld.js
浏览器访问:http://localhost:8000
*/
相关基础语法说明如下:
1)require 语句,用于加载所需的模块。
关于该语句的详细解析,可参考文章《node.js require() 源码解读》(https://www.jb51.net/article/76308.htm)。
2)http.createServer(function(req, res){ }).listen(8000);
方法说明:
该函数用于创建一个 HTTP 服务器,并将 requestListener 作为 request 事件的监听器。随后调用 listen 函数以指定端口进行监听。
接收参数:
requestListener 是请求处理函数,它会自动添加到 request 事件中,该函数接收两个参数:
req 表示请求对象,如需了解 req 的具体属性,可查看“http.request 属性整合”。
res 表示响应对象,用于在收到请求后生成相应的响应。如需了解 res 的具体属性,可查看“http.response属性整合”。
3)response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
方法说明:
用于向请求的客户端发送响应头信息。
接收参数:
statusCode 为 HTTP 状态码,例如 200 代表请求成功,404 代表未找到资源等。
headers 是一个类似关联数组的对象,用于定义响应头的各个属性。
该函数在一个请求生命周期内最多只能调用一次;若未显式调用,系统将自动生成默认响应头。
4)response.end()
方法说明:
用于结束响应过程,告知客户端所有消息已发送完毕。当所有需要返回的内容均已发送后,必须调用该函数一次。
若不调用此函数,客户端将一直处于等待状态,无法完成请求。
运行步骤与访问验证
将上述代码保存为 1_helloworld.js 文件,在命令行(cmd)中执行 node 1_helloworld.js 命令。随后在浏览器中访问 http://localhost:8000 即可看到效果。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持本站!