Http协议

it2023-06-08  74

ip:规定了互联计算机之间定位规则

tcp:规定了互联计算机通过 ip 定位后,发送数据的规则端口 ip -> 定位主机 端口 -> 软件,应用

在数据发送过程中除了要有具体发送的数据,还有一些其他额外的数据,比如:接收和发送人的 ip、端口,为了能让接收数据的乙方能够按照数据反馈信息给对方。

同时在发送过程中数据会按一定规则打包,比如将大的数据打包成一个一个小的数据包,每个数据包都包含如上的一些信息。

A ->B A 发送的数据: ‘dasfdafa’ {192.168.0.1 | 7777 | dasdad} -> {192.168.0.1 | 7777 | 45646}

在实际应用中,不同软件可能都会用到这样的方式来传递数据,不过可能在具体数据组织上会有不同的个性的设置,所以不同的应用程序会对发送的数据进行自己的二次包装(TCP),形成各式各样的其他传输协议:HTTP\FTP\MAIL

http

规定了请求发送的数据格式 Request Line:请求行 Request header:请求头 Request body:请求正文规定了返回的数据格式传输的规则

Http - node.js

// 服务端 const http = require('http'); const serve = http.createServer(); server.on('request',() => { console.log('接收到请求'); }); server.listen(80,'0.0.0.0') // 80默认,约定给 http 使用 // 客户端 const http = require('http'); const fs = require('fs'); http.request({ // tcp host:'127.0.0.1', port:80, // http protocol:'http', method:'get', path:'/' },res => { // 这个函数会在服务器响应的时候触发 let content = ''; // res => socket res.on('data', data => { // console.log(data.toString()); content += data.toString(); }); res.on('end',() => { fs.writeFileSync('./souhu.html',content); }) }); // 请求的发送需要调用下面的方法 client.write(''); client.end();
最新回复(0)