Web工作原理:请求与响应

Web工作原理:请求与响应

请求与响应

  • 我们知道,请求就是客户端向服务端发送请求,请求客户端所需要的数据,服务器响应客户端,给客户端响应它想要的数据

当我们访问一个WEB,发生了什么

请求

  1. 客户端通过浏览器访问URL,URL一般由协议(HTTP或者HTTPS)、域名、资源;之后将由DNS解析真实的IP地址;

  2. 之后客户端将通过TCP/IP与服务器建立联系,这种连接会一直保持活跃状态以保证所有的文件或者数据传输完成;

  3. 第三步就是客户端向服务端发送HTTP请求,HTTP是超文本传输协议;

  4. 其中HTTP的请求如下

http 复制代码
GET /rest/v2/.../1.1    //起始行:HTTP 方法 + 请求目标 + HTTP 版本

//下面三行HTTP请求标头(现实可能不止这些)
Host: www.google.com
User-Agent: Mozilla/5.0
Accept-Language: en-us


<BODY>    //请求体(仅在向服务器发送数据时,例如POST)

什么是TCP/IP协议

TCP是传输控制协议,IP是互联网协议,他们组合在一起就是一种通信协议;

这些请求和后续的数据被打包成小"包裹",通过网络传输,就像寄快递一样。每个包裹都有地址标签,确保送到正确的地方。

不用把这些协议想的太过于复杂,其实和打电话上一样的道理;

响应

  1. 服务端向客户端发送HTTP响应,响应请求格式可能如下
http 复制代码
HTTP/1.1 200 OK   //起始行:HTTP版本+状态码+状态信息

//下面三行是HTTP响应头(由许多不同的可能性)
Date: Fri, 18 Jan 2021
Content-Type: text/html
Transfer-Encoding: chunked


<BODY>  //响应体(大多数可能)
相关推荐
UXbot22 分钟前
UI设计工具推荐合集
前端·人工智能·ui
敲敲了个代码1 小时前
如何优化批量图片上传?队列机制+分片处理+断点续传三连击!(附源码)
前端·javascript·学习·职场和发展·node.js
@AfeiyuO1 小时前
Vue 引入全局样式scss
前端·vue·scss
光影少年1 小时前
flex布局和grid布局区别,实现两边固定布局中间自适应
前端·css3·web·ai编程
全栈测试笔记1 小时前
异步函数与异步生成器
linux·服务器·前端·数据库·python
EndingCoder2 小时前
配置 tsconfig.json:高级选项
linux·前端·ubuntu·typescript·json
木风小助理2 小时前
JavaStreamAPI的性能审视,优雅语法背后的隐形成本与优化实践
java·前端·数据库
white-persist3 小时前
轻松抓包微信小程序:Proxifier+Burp Suite教程
前端·网络·安全·网络安全·微信小程序·小程序·notepad++
敲敲了个代码4 小时前
多标签页强提醒不重复打扰:从“弹框轰炸”到“共享待处理队列”的实战
java·前端·javascript·面试·架构
不想上班只想要钱4 小时前
动态类名在 <swiper-slide 的复制项中没有起作用的解决方法
前端·vue.js