HTTP协议详解

HTTP是基于TCP的应用层协议,用于在Web上交换信息。其工作过程包括客户端发起请求,服务器处理并返回响应。请求包括URL、方法、协议头等,URL定义了资源的位置和获取方式。响应则包含状态码,表示请求处理的结果。协议头如Content-Type定义了数据格式。
摘要由CSDN通过智能技术生成

目录

一、HTTP工作过程

二、HTTP 协议格式

 1、请求(Request)格式

 2、URL格式

3、方法(method)

 4、协议头(header)

5、响应(Response)格式

6、常见的状态码

​编辑 


一、HTTP工作过程

HTTP (全称为 “超文本传输协议”) 是一种应用非常广泛的应用层协议。

1.基于某个特定的传输层协议(TCP)之上
2.描述业务
3.非OS系统

当我们在浏览器中输入一个 “网址”, 此时浏览器就会给对应的服务器发送一个 HTTP 请求. 对方服务器收到这个请求之后, 经过计算处理, 就会返回一个 HTTP 响应。

在这里插入图片描述 

 事实上, 当我们访问一个网站的时候, 可能涉及不止一次的 HTTP 请求/响应 的交互过程。


二、HTTP 协议格式

请添加图片描述

 注意: 为什么 HTTP 报文中要存在空行呢?

  • 因为 HTTP 协议并没有规定报头部分的键值对有多少个,使用空行就相当于是报文的结束标记或报文和正文之间的分隔符
  • HTTP 在传输层依赖 TCP 协议,TCP 是面向字节流的。如果没有这个空行,就会出现”粘包问题“

 1、请求(Request)格式

在这里插入图片描述

 2、URL格式

URL (Uniform Resource Locator 统一资源定位符),互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。

请添加图片描述

URL的具体格式:

  • 资源在哪台主机上——域名 (domain) 或者ip来体现一主机 (host)
  • 和主机上的哪个进程去获取资源——端口 (port)
  • 具体定位到是该进程管理的哪个资源——资源路径/路径 (path)
  • URL设计之处,不仅仅为HTTP协议使用。所以需要标识出本次资源对应的协议(protocol / schema)
  • 针对本次请求,除了资源本身之外的特殊要求。(查询字符串 query string、文档片段 fragment)

3、方法(method)

 4、协议头(header)

header 的整体格式是键值对结构,每个键值对占一行,键和值之间使用 冒号+空格 进行分割

 Content-Type 有以下三种请求中的数据格式:

  • application/x-www-form-urlencoded
  • multipart/form-data
  • application/json

5、响应(Response)格式

在这里插入图片描述

6、常见的状态码

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值