http请求原理

面试前段时候遇到过这一个问题,谈谈对http的看法,一脸懵逼。面试过后仔细查了查。
HTTP 通常被译为超文本传输协议,但这种译法并不严谨。严谨的译名应该为“超文本转移协议”。但是前一译法已约定俗成,一般就叫超文本传输协议。
http诞生于1989年3月,由CERN(欧洲核子研究组织)的蒂姆 • 伯纳斯 - 李(Tim BernersLee)博士提出了一种能让远隔两地的研究者们共享知识的设想。
通常使用的网络(包括互联网)是在 TCP/IP 协议族的基础上运作
的。而 HTTP 属于它内部的一个子集。
TCP/IP 协议族里重要的一点就是分层。TCP/IP 协议族按层次分别分
为以下 4 层:应用层、传输层、网络层和数据链路层。http属于应用层。

以下是 HTTP 请求/响应的步骤:

1、客户端连接到Web服务器
一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。例如,http://www.baidu.com
2、发送HTTP请求
通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
3、服务器接受请求并返回HTTP响应
Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
4、释放连接TCP连接
若connection 模式为close,则服务器主动关闭TCP连接,客户端被动关闭连接,释放TCP连接;若connection 模

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的应用层协议。它是建立在TCP/IP协议之上的,基于客户端-服务器模型。HTTP请求的基本原理可以简述如下: 1. 客户端发起请求:客户端(如浏览器)向服务器发起HTTP请求。请求包括请求方法(如GET、POST)、请求URL、请求头部(如Accept、Content-Type)和请求体(可选)等信息。 2. 服务器响应请求:服务器接收到客户端的HTTP请求后,根据请求的内容进行处理,并生成对应的HTTP响应。响应包括响应状态码(如200 OK、404 Not Found)、响应头部(如Content-Type、Content-Length)和响应体等信息。 3. 数据传输:客户端和服务器通过TCP/IP协议进行数据传输。客户端在发送请求时会打开一个TCP连接,发送请求数据;服务器收到请求后会返回响应数据。请求和响应数据都是通过TCP连接传输的。 4. 连接管理:默认情况下,HTTP是一种无状态协议,即每个请求和响应之间没有关联。为了维护状态,可以使用Cookie或者Session等机制来跟踪客户端和服务器之间的状态。 需要注意的是,HTTP是一种明文协议,数据在传输过程中是以明文形式进行传输的,因此不安全。为了保证传输安全,可以使用HTTPS(HTTP Secure)协议,它在HTTP的基础上添加了SSL/TLS加密层,对数据进行加密和认证。 以上是HTTP请求的基本原理,实际上,HTTP协议还有很多细节和特性,如缓存机制、认证机制、重定向等,开发者在实际应用中需要根据需求和具体情况进行处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值