千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:青岛千锋IT培训  >  技术干货  >  客户端向服务器发送请求的过程

客户端向服务器发送请求的过程

来源:千锋教育
发布人:qyf
时间: 2023-02-21 17:13:15

客户端向服务器发送请求的过程

  DNS/握手挥手/地址栏输入URL会发生什么

  发送请求都是通过URL来进行,所以首先会针对请求地址中的域名来进行解析,因为域名是为了方便用户访问才有的,真正的机器间的访问都通过IP来访问的,所以我们在进行请求的时候,请求地址中拥有的是域名,但是客户端在向服务端发送请求的时候,是要通过ip来进行访问的,所以就需要通过DNS解析机制来将域名解析成IP。

  解析过程:

  1. 1.

  先从浏览器本地去查找缓存的域名对应的ip地址。

  2. 2.

  再考虑从计算机本地缓存文件去查找,例如hosts文件中

  3. 3.

  客户端会像当前城市内的DNS服务器去查找

  4. 4.

  客户端再向主域名服务器请求查找 .com域名服务器,.cn域名服务器

  5. 5.

  拿到ip之后,客户端进行缓存后,就可以发送请求。

  发送http请求的时候,要经过TCP三次握手和四次挥手才能建立连接和断开连接。

  三次握手:

  1. 1.

  客户端与服务端握手,客户端通知服务端,要与其连接了,主要是发送两个报文包:SYN = 1,SEP = X

  2. 2.

  服务端与客户端握手,我知道了,连吧,:SYN = 1,SEP = Y ,ACK = X+1

  3. 3.

  客户端与服务端握手,那我就开始连接了,SEP = Z ,ACK = Y+1

  此时客户端与服务端均确认了身份,可以进行数据交互;只有三次握手后,才能确认身份,两次是不可以的。

  四次挥手:

  1. 1.

  客户端向服务端发送信息,我的请求报文已经发送完了,准备断开了

  2. 2.

  服务端向客户端发送信息, 请求报文我接受完了,我也准备断开了

  3. 3.

  服务端向客户端发送信息,响应报文我发送完了,我这回真的要断开了

  4. 4.

  客户端向服务端发送信息,响应报文我收到了,这回咱断开吧

  接下来就可以根据TCP连接来向客户端发送请求,来请求到页面的入口文件,然后浏览器开始对入口文件进行从上到下的解析,去构建文档流并进行渲染,再遇到script/style标签的时候,会调用JS引擎线程、渲染线程进行渲染,遇到link、script:src、img的时候会再次发送请求去请求对应的文件之后进行处理。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

清除浮动是怎么回事?

2023-02-21

客户端向服务器发送请求的过程

2023-02-21

什么是宽高自适应呢?

2023-02-21

最新文章NEW

Java项目中到底该怎么使用线程池?

2023-02-21

Oozie和Azkaban的区别

2023-02-21

如何进行权限控制?

2023-02-21

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>