# 网络基础

前面我们用 Node.js 做了一个 Web 服务器,启动以后大家就可以通过网络使用这个 Web 服务了。这就扯出来一些跟网络相关的概念,地址里的 HTTP 是什么意思,Localhost 是啥玩意,端口号是又干什么用的。这一章我们就来了解一点网络的基础,这会有助于我们以后开发服务端的应用。

# 传输协议(HTTP)

在新窗口观看视频

协议(Protocol)是网络上的设备之间签订的合同,大家都要遵守、履行这个合同才可以正常沟通、交流、合作。也可以把协议想成是一套协调商议出来的方法,比如先干什么,再干什么,怎么干等等,大家可以用这套方法来相互协作,交换数据。

HTTP(HyperText Transfer Protocol) 就是一种传输数据用的协议。客户端与服务端,服务端与服务端之间都可以通过这种协议传输数据。我们之前搭建了一个 Web 服务,这个服务遵照了 HTTP 协议的要求,所以客户端可以使用 HTTP 这种协议使用我们的 Web 服务。

还有一种叫 HTTPS 的协议,S 指的是 Secure(安全),所以 HTTPS 就是一种更安全的 HTTP 协议。设备之间通过网络,使用 HTTP 协议相互传输数据,数据在运输途中可能会被一些坏蛋获取到(嗅探),这样这些坏蛋就知道用户给服务发了什么数据,或者服务给用户响应了什么数据。如果换用 HTTPS 来运输数据就安全多了,因为这些运输的数据是加密过的,也就是只有用户与服务才知道具体的数据是什么,这样这些小坏蛋们即使打听到了用 HTTPS 运输的数据,它们也看不懂里面到底是什么。

HTTPS 与 HTTP 的主要区别就是一个加密数据一个不加密数据,现在大部分 Web 服务都会选择使用 HTTPS 这种协议,在后面介绍部署应用的时候,再去学习怎么配置 Web 服务使用 HTTPS 协议。

之前我们搭建了一个 Web 服务器,服务器是遵照 HTTP 协议搭建的,所以客户端与服务端就可以使用 HTTP 协议互传数据了。我们在浏览器的地址栏里输入 http://localhost:3000,这种地址形式就说明了是在使用 HTTP 这种协议传输数据。先是 http://,后面是主机名或者 IP 地址,最后还可以设置一下端口号...

成为一名开发者,把想法变成现实
参加此次开发之旅
订阅