MiniCode

Client & Server

客户端与服务器

免费阅读 · 更新于

一句话理解

弄清是谁发起请求,又是谁提供服务。

打个比方

去图书馆查书,你提出查询,服务台查找并给出结果。客户端和服务器也是在一次交互中扮演请求方和服务提供方。

浏览器和手机 App 都可以是客户端。服务器接收请求并返回结果。“服务器”既可能指运行服务的机器,也可能指处理请求的软件;一台电脑可以同时运行多个服务。

看个例子

访问过程示意
浏览器请求网页
→ 网站服务返回 HTML
→ 浏览器读取 HTML
→ 请求所需图片和样式
→ 显示页面

一次打开网页可能发出许多请求。页面显示了文字,不代表每张图片和每个接口都加载成功。

什么时候会遇到

  • 理解为什么本地可访问的 localhost 地址不能直接分享给别人。
  • 区分浏览器错误、网络错误与服务器返回的错误。

常见误解

服务器不一定是一台独占的巨大电脑;本地开发服务也在扮演服务器的角色。

想一想

朋友打开你发的 localhost 链接,会访问到你的电脑吗?

查看答案

通常不会。localhost 指访问者自己的设备。分享作品需要可被对方访问的地址。

继续查阅官方资料

MDN · 客户端与服务器本文为面向新手的概念解释,具体工具行为以对应文档为准。