HTTP基础和Node.js服务器

HTTP协议底层由TCP协议和IP协议构建

1.TCP

  1. TCP 和 UDP 的区别是什么
    简答:TCP 可靠、面向连接、慢一点,但注重安全性,适应于网页、邮件;
    UDP 不可靠,无连接、较快,安全性低一点,适应于视频、语音。
  2. TCP 的三次握手指的是什么
    简答:每次建立连接前,客户端和服务端之前都要先进行三次对话才开始正式传输内容,三次对话大概是这样的:

    1
    2
    3
    4
    1\. 客户端:我要连接你了,可以吗
    2\. 服务端:嗯,我准备好了,连接我吧
    3\. 客户端:那我连接你咯。
    4\. 开始后面步骤

    上面内容足以应付前端面试中关于 TCP 的考题,如果你想更了解 TCP 可以看 此文

2.IP

  1. 外网IP
    你的路由器自己会有一个外网IP,像访问的腾讯、阿里的网站就是租用了很多外网IP

  2. 内网IP
    而你在家用的手机、电脑用的就是内网IP,路由器也会给自己一个内网IP,一般是:192.168.1.1

  3. 内网和外网之间不能互相访问,但是外网和外网之间可以访问,所以你在家上网就是通过路由器的外网和其他外网连接,你访问的网站在外网发送信息到你的路由器上,然后路由器将信息转到内网发送到你电脑上

  4. 本地 IP:127.0.0.1

  5. 特别特殊的 IP:0.0.0.0,它不表示任何设备。

3.端口

一个端口对应一种服务
HTTP服务用80端口
HTTPS服务用443端口
FTP服务用21端口
使用HTTP协议访问一个IP,要同时提供IP和端口号,平常没填是因为浏览器默认帮你加了

4.Node.js服务器

一个很简易的服务器

进入服务器所在文件夹输入
node server.js 1024服务器开始监听,使用1024端口
开始监听服务器

在另一个 窗口输入
curl -s -v -- http://localhost:1024
访问服务器的index页面,返回的是请求信息、响应信息和下载内容。
在终端访问服务器

在浏览器中访问则直接显示index页面加上css和js效果

一般情况下/代表index,同时在index里引用了css和js文件,所以出现了三个路径
在浏览器中访问服务器中显示的内容