做一个公司网站流程 由ui设计上海网安备案网站
HTTP 基本概念
HTTP 是超文本传输协议 (HyperText Transfer Protocol)
超文本传输协议(HyperText Transfer Protocol)
HTTP 是一个在计算机世界里专门在 两点 之间 传输 文字、图片、音视频等 超文本 数据的 约定和规范

1. 协议
约定和规范
2. 传输
两点之间传输(服务端——服务端,服务端——客户端),中间允许中转
3. 超文本
一种可以包含文本、图片、音频、视频等多种形式内容的文档,并通过超链接(Hyperlinks)与其他资源或文档相连接的非线性信息结构
- 非线性:
 
-  
- 超文本允许用户在不同文档、内容之间跳转,而不是按照固定顺序阅读。
 
 
HTTP 消息结构
请求消息(Requset)

- 请求行
 
-  
- 方法:如 GET、POST、PUT、DELETE 等,指定要执行的操作。
 
 
|   方法  |   描述  | 
|   GET  |   从服务器获取资源。用于请求数据而不对数据进行更改。例如,从服务器获取网页、图片等。  | 
|   POST  |   向服务器发送数据以创建新资源。常用于提交表单数据或上传文件。发送的数据包含在请求体中。  | 
|   HEAD  |   类似于 GET,但服务器只返回响应的头部,不返回实际数据。用于检查资源的元数据(例如,检查资源是否存在,查看响应的头部信息)。  | 
|   PUT(HTTP/1.1)  |   向服务器发送数据以更新现有资源。如果资源不存在,则创建新的资源。与 POST 不同,PUT 通常是幂等的,即多次执行相同的 PUT 请求不会产生不同的结果。  | 
|   DELETE(HTTP/1.1)  |   从服务器删除指定的资源。请求中包含要删除的资源标识符。  | 
|   PATCH(HTTP/1.1)  |   对资源进行部分修改。与 PUT 类似,但 PATCH 只更改部分数据而不是替换整个资源。  | 
|   OPTIONS(HTTP/1.1)  |   返回服务器支持的 HTTP 方法。用于检查服务器支持哪些请求方法,通常用于跨域资源共享(CORS)的预检请求。  | 
|   TRACE(HTTP/1.1)  |   回显服务器收到的请求,主要用于诊断。客户端可以查看请求在服务器中的处理路径。  | 
|   CONNECT(HTTP/1.1)  |   建立一个到服务器的隧道,通常用于 HTTPS 连接。客户端可以通过该隧道发送加密的数据。  | 
-  
- 请求 URI(统一资源标识符):请求资源的路径,通常包括主机名、端口号、路径和查询字符
 - HTTP 版本:如 HTTP/1.1 或 HTTP/2
 - 示例:
GET /index.html HTTP/1.1 
 
- 请求头(Headers)
 
-  
- 键值对形式的元信息(描述请求、请求端的属性和参数)
 - 示例:
 
 
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html 
- 空行
 
-  
- 分隔请求头和请求体
 
 
- 请求体(Body 可选)
 
-  
- 请求端发送的数据(JSON,表单等)
 - 示例:
 
 
{"username": "john","password": "secure123"
}
 
响应消息(Response)

- 状态行
 
-  
- 协议版本:与请求消息一致
 - 状态码:三位数,表示请求处理的结果
 
 
-  
-  
- 常见的状态码 

 
 - 常见的状态码 
 
 -  
 
-  
-  
-  
1xx类:提示信息,协议处理的中间操作。2xx类:服务器成功处理了客户端请求,成功码。
 
 -  
 
 -  
 
-  
-  
-  
-  
200 OK:最常见的成功状态码,非HEAD请求(类似GET请求,但只返回 HTTP 响应头,用于检查接收端资源的元信息)响应头带响应体数据。204 No Content:成功状态码,但没有响应体数据。206 Partial Content:HTTP 分块下载或断点续传,表示body数据并不是资源全部。
 
 -  
 
 -  
 
 -  
 
-  
-  
-  
3xx类:该请求的资源发生了变动,需要用新的URL重新发送请求来获取资源,即重定向。
 
 -  
 
 -  
 
-  
-  
-  
-  
301 Moved Permanently:永久重定向,说明请求的资源已不存在。302 Found:临时重定向,资源还在,但暂时需要另一个URL来访问。304 Not Modified:不具有跳转含义,表示资源未修改,重定向已存在的缓存文件,即缓存重定向。
 
 -  
 
 -  
 
 -  
 
-  
-  
-  
4xx类:请求错误码。
 
 -  
 
 -  
 
-  
-  
-  
-  
400 Bad Request:笼统错误。403 Forbidden:禁止访问资源,非请求错误。404 Not Found:请求资源未找到。
 
 -  
 
 -  
 
 -  
 
-  
-  
-  
5xx类:请求正确,服务器内部处理出错,服务端错误码。
 
 -  
 
 -  
 
-  
-  
-  
-  
500 Internal Server Error:与400一样笼统错误。501 Not Implemented:该请求的功能还未支持、开发。502 Bad Gateway:网关或代理错误。503 Service Unavailable:服务繁忙。
 
 -  
 
 -  
 
 -  
 
-  
- 状态描述:即状态码后面的描述信息。
 
 
- 响应头部(Headers)
 
-  
- 键值对形式的元信息(描述响应体、服务端的属性和参数)
 - 示例:
 
 
Content-Type: text/html
Content-Length: 137 
- 空行:Headrs 与 Body 的分隔。
 - 响应体(Body)可选
 
-  
- 响应的实际内容数据(Html,Json,图片等)
 - 示例:
 
 
<html><head><title>Example</title></head><body><h1>Hello, World!</h1></body>
</html>