HTTP 协议(Ⅲ)

打印 上一主题 下一主题

主题 891|帖子 891|积分 2673

目录
一、HTTP 协议概念
二、无状态协议
三、HTTP1.0 & HTTP1.1
 四、请求协议和响应协议
五、请求协议
1.浏览器监视请求和响应
2. HTTP请求
2.1 请求的布局
2.2 GET请求
2.3 POST请求
3. HTTP响应
3.1 响应的布局
3.2 常见响应头字段
3.3 常见状态码
4. 请求和响应的总结

HTTP协议是客户端与服务器通信的“语言”,规定了请求和响应的格式与规则。服务器是HTTP协议的实行者,接收客户端的HTTP请求,处置惩罚后返回HTTP响应。两者的关系是:HTTP协议定义了交互方式,服务器是实现和响应协议的主体。
一、HTTP 协议概念

HTTP,即超文本传输协议。全部浏览器都可以发出http协议。
协议:就是规定的文本格式!比方写本书也要有格式,写总结也有格式。固然客户端发 送请求也要有格式,这个格式是已经约定的格式,以是服务器端按请求格式来获取请求信息, 然后服务器端再按照响应格式来响应,固然客户端还要按响应的格式来剖析。
二、无状态协议

HTTP 是无状态协议,必须必须明确这一点!!!
所谓无状态,就是客户端发送一个请求,服务器返回一个响应,然后就断开连接了
无状态协议的利益,固然是效率高了,用户连接一下就断开,当用户再次发送请求时, 再连接,然后在响应之后再次断开。假如用户在服务器上找到了自己想看的小说,那么服务器只是把小说的内容(html)发送给用户的浏览器,然后用户的浏览器表现已经发送到本地的html,其实这时已经与服务器断开连接了。用户可能会看很久,但这不会占用服务器 的任何资源!
即实现了随用随断开。
三、HTTP1.0 & HTTP1.1

特性HTTP/1.0HTTP/1.1连接方式默认非持久连接,每次请求后关闭连接默认持久连接(Keep-Alive),支持多个请求/响应Host 头不支持 Host 头,无法区分同一 IP 上的多个域名支持 Host 头,支持虚拟主机响应头响应头较简朴,功能有限增加了更多响应头字段(如 Content-Length、Transfer-Encoding),支持分块传输缓存机制缓存依赖于 Expires 头,机制简朴引入 Cache-Control,支持强缓存和协商缓存错误处置惩罚状态码较少,错误处置惩罚简朴增加更多状态码,提供更详细的错误信息性能优化性能较差,每次请求都需要创建和关闭连接性能提拔,持久连接减少连接开销应用场景已基本被 HTTP/1.1 替代,现代服务器很少使用广泛应用于现代 Web 服务器,是主流协议之一  四、请求协议和响应协议

无论是请求协议还是响应协议,都是由如下部分构成的: 
请求(或响应)首行;
请求(或响应)头信息;
空行;
请求(或响应)正文。
五、请求协议

1.浏览器监视请求和响应



  • 功能:通过浏览器的开发者工具可以监视HTTP请求和响应,获取完整的请求和响应信息。
  • 浏览器支持

    • Firefox:支持监视功能。
    • Google Chrome:内置此功能,无需安装。

2. HTTP请求

2.1 请求的布局



  • 请求首行:包含请求方法(如GET或POST)、请求路径和HTTP协议版本。

    • 示例:GET /hello/index.jsp HTTP/1.1

  • 请求头:包含客户端向服务器发送的附加信息。
  • 请求正文:GET请求没有正文,POST请求有正文。
2.2 GET请求



  • 特点

    • 请求参数通过URL传递,容量有限(通常不凌驾1024KB)。
    • 没有请求正文,只有请求头。

  • 请求头字段

    • Host:请求的主机名。
    • User-Agent:客户端的浏览器和操作体系信息。
    • Accept:客户端可担当的文档范例。
    • Accept-Language:客户端支持的语言。
    • Accept-Encoding:支持的压缩格式。
    • Connection:连接方式(如keep-alive)。
    • Cookie:客户端存储的Cookie信息。

2.3 POST请求



  • 特点

    • 请求正文包含表单数据。
    • 常用于提交表单数据。

  • 请求头字段

    • Referer:请求泉源页面。
    • Content-Type:表单数据的编码范例(如application/x-www-form-urlencoded)。
    • Content-Length:请求正文的长度。

  • 请求正文

    • 示例:username=hello,表示表单中输入的数据。

3. HTTP响应

3.1 响应的布局



  • 响应首行:包含HTTP协议版本、状态码和状态码的表明。

    • 示例:HTTP/1.1 200 OK

  • 响应头:包含服务器向客户端发送的附加信息。
  • 响应正文:通常是HTML代码。
3.2 常见响应头字段



  • Server:服务器的版本信息。
  • Content-Type:响应正文的编码格式。
  • Content-Length:响应正文的长度。
  • Set-Cookie:服务器发送给客户端的Cookie。
  • Date:响应的时间。
3.3 常见状态码



  • 200 OK:请求成功。
  • 404 Not Found:未找到请求的资源。
  • 500 Internal Server Error:服务器内部错误。
  • 其他情况:通常是格式不匹配等问题。
4. 请求和响应的总结



  • 请求方法

    • GET:用于获取资源,无正文,参数在URL中。
    • POST:用于提交数据,有正文,数据在请求正文中。

  • 请求首行:请求方法 URL HTTP/1.1
  • 响应首行:HTTP/1.1 状态码 状态码的表明
  • 响应正文:通常是HTML代码。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

美食家大橙子

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表