HTTP 之 基本概念(一)

1. 协议基础:

HTTP是一种请求-响应协议,客户端发起请求,服务器响应请求。

2. 无状态性:

每个HTTP请求都是独立的,服务器不会保存请求之间的状态信息。这意味着服务器无法识别两个请求是否来自同一个客户端。
例子:

假设你访问一个网站,每次点击链接或提交表单,浏览器都会发送一个新的HTTP请求。服务器处理每个请求,但不会记住你之前访问了哪些页面。

3. 连接:

HTTP/1.1之前,每个请求/响应都需要建立一个新的TCP连接。HTTP/1.1引入了持久连接(Persistent Connection),允许在一个TCP连接上发送多个请求和响应。
例子:

打开一个网页,页面中的图片、CSS文件和JavaScript文件都可以通过同一个TCP连接加载,而不是每个资源都建立一个新的连接。

4. 请求方法:

HTTP定义了多种请求方法,用于不同的操作:
GET:请求数据。
POST:提交数据,通常用于表单提交。
PUT:更新数据。
DELETE:删除数据。
例子:

当你访问一个网页时,浏览器会发送一个GET请求。当你在网站上注册账户并提交表单时,浏览器会发送一个POST请求。

5. 资源定位:

每个资源都有一个唯一的URI(Uniform Resource Identifier,统一资源标识符),通常是URL(Uniform Resource Locator,统一资源定位符)。
例子:

访问 http://www.example.com/index.html,这里的URL指向服务器上的特定资源。

6. HTTP消息:

HTTP通信由HTTP消息组成,包括请求消息和响应消息。
请求消息包括请求行(方法、URI、HTTP版本)、请求头部、空行和请求体。
响应消息包括状态行(HTTP版本、状态码、状态信息)、响应头部、空行和响应体。
例子:
请求

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept-Language: en-US

响应

HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1234
Last-Modified: Wed, 21 Oct 2015 14:26:38 GMT

<html>
...
</html>

7. 状态码:

服务器响应包含一个三位数字的状态码,表示请求的结果。
常见的状态码包括:
200 OK:请求成功。
404 Not Found:请求的资源未找到。
500 Internal Server Error:服务器内部错误。
例子:

如果你尝试访问一个不存在的页面,服务器可能会返回一个404状态码。

8. 头部字段:

HTTP头部字段提供了关于请求或响应的附加信息,如:
Content-Type:指定返回内容的MIME类型。
Content-Length:指定返回内容的长度。
Set-Cookie:服务器用来设置客户端的cookie。
例子:

请求头部可能包含 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,表示客户端可以接受的MIME类型。

9. 安全性:

HTTP本身不加密数据,因此容易受到窃听和篡改。HTTPS通过在HTTP上添加SSL/TLS层来提供加密、身份验证和数据完整性。
例子:

当你访问 https://www.example.com 时,浏览器和服务器之间的通信是加密的,保护了你的数据安全。

10. 缓存:

HTTP提供了缓存机制,允许客户端存储之前请求的响应,减少重复请求相同资源的次数。
例子:

如果你之前访问过一个网页,浏览器可能会缓存该页面的一些资源,当你再次访问时,浏览器可以直接使用缓存的资源,而不需要重新从服务器加载。

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

**之火

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值