1: IP 地址用来定位计算机, 端口号用来定位具体的应用程序。
(所有需要联网的通信的软件都必须有端口号)
2: 所有联网的程序都需要进行网络通信
计算机中只有一个物理网卡, 而且只有一个局域网中, 网卡的地址必须是唯一的。
3: 网卡通过唯一的ip 地址进行定位的。
4: 在url 地址栏中输入地址 会被DNS 解析为 ip 地址。
// 加载http 模块
4.1: 创建一个Server 服务器
var server = http.createServer();
4.2: 监听request 请求事件, 设置请求处理函数
server.on('request', (req, res)=> {
console.log('收到请求了', 请求路径是:' + req.url);
console.log('请求我的客户端号是: ', req.socket.remotePort);
})
5: 端口号的范围是从: 0 ~ 65536 之间。
6: 可以同时来气多个服务, 但是每一个服务都必须对应一个端口号。
1: 加载http 模块
var http = require('http');
2: 创建服务器
var server = http.createServer(); // 创建服务器
监听浏览器请求事件
3: server.on('request', (req, res)=> {
// 在服务器端发送请求的数据, 其实是utf-8 的内容
// 但是浏览器不知道 utf-8 编码的内容
// 浏览器在不知道的服务器响应的编码内容的情况下, 会按照操作系统的默认编码去解析。
// 中文操作系统是 gbk
// 加上响应头信息 (设置响应头信息为 utf-8 字节码)
Content-type: 就是告诉对方发送数据的内容是什么数据类型。
Content-type: 'text/html' 响应的是html 内容的格式
res.Header('Content-type', 'text/plain; chartset= utf-8');
res.end('响应数据');
var url = req.url;
if(url==='/plain') {
res.setHeader('Content-type', 'text/plain; chartset=utf-8');
res.end('hello, word')
}else if(url==='/html') {
res.setHeader('Content-type', 'text/plain; chartset=utf-8');
res.end('<p>hello world</p>')
}
})
4: 监听端口号
server.listen(3000, (req, res)=> {
console.log(server is runing...)
})
IP地址和端口号
最新推荐文章于 2024-11-28 12:38:49 发布