http模块
-
客户端:负责消费资源的电脑
-
服务器:负责对外提供网络资源的电脑,与普通电脑的区别就在于服务器上 安装了web服务器软件。
-
http模块是Node.js官方提供用来 创建web服务器的模块,通过http模块提供的http.createServer()方法,将一台普通电脑变成一台web服务器,从而对外提供web资源
-
使用http模块创建web服务器,需要使用以下代码导入它
const http = require('http');
IP地址:互联网上每台计算机的唯一地址,具有唯一性。采用 “点分十进制”表示,例如192.1688.1.1,互联网上的每台web服务器都有自己的IP地址,可以在windows终端运行ping www.baidu.com
,即可查看百度服务器的IP地址,通过百度IP地址可以直接打开百度。在开发期间自己的电脑既是一个服务器也是一个客户端,为了方便测试可以在浏览器输入127.0.0.1
这个 IP地址,就能将自己的电脑当作一台服务器进行访问。 -
服务器相关概念:
- 域名:字符型的地址方案,即所谓的域名地址,IP地址和 域名是一一对应的关系,由于直接使用IP地址(如192.168.1.1)既不方便记忆也不直观,人们便发明了域名系统,通过有意义的单词组合来代表IP地址,例如"example.com"就是一个典型的域名。域名的结构通常包括顶级域名(如.com、.cn)、二级域名(通常是企业或个人选择的名称,如google),以及可能的子域名(如mail.google.com)。这样的结构设计既方便记忆,又能传达一定的信息。
- 域名服务器:即DNS,提供IP地址和域名之间的转换服务的服务器。
- 端口号:类似于门牌号,对应相应的服务器,每个端口号不能同时 被多个web服务器占用,实际应用中URL的80端口可以被省略。在一台电脑中可以运行成百上千个web服务器,每个服务器对应唯一的一个端口号,客户端发送网络请求,,通过端口号准确的交给对应的web服务进行处理。
-
创建最基本的web服务器
- 导入http模块
const http = require('http');
- 创建web服务器实例
调用http.createServer()
方法即可快速创建一个web服务器实例
const server = http.createServer();
- 为服务器实例绑定request事件,监听客户端的请求
//使用服务器实例的 .on()方法,为服务器绑定一个request事件 server.
- 导入http模块