HTTP 协议详解

简介: HTTP 协议详解

文章目录

200 OK

404 Not Found

403 Forbidden

405 Method Not Allowed

500 Internal Server Error

302 Move temporarily

301 Moved Permanently

Content-Type


1. HTTP协议介绍

Http协议是一个TCP协议,采用BS模型,用来传输数据(查询结果等)超文本传输协议,从服务器传输超文本到本地浏览器的传送协议,HTTP 是一种应用层协议,是基于 TCP/IP 通信协议来传递数据的。

特点:快速简单:客户服务器发送请求,只需要传送请求的方法和路径。请求方法有Get、Post等

协议:使数据在网络上从源头到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议,它最终体现为在网络上传输的数据包的格式(通俗讲,协议就是要保证网络通信的双方,能够互相对接上号。就像是两个人传递纸条通过互相指定的暗号,如果发送天亮了,表示可以打游戏了等)


2. HTTP协议工作过程

4edc953e2c684bbe819ffa954c899c08.png

4. HTTP协议格式总览

4edc953e2c684bbe819ffa954c899c08.png


5. HTTP 请求(Request)

5.1 “方法” Method

GET 方法

GET

请求指定的页面信息,并返回实体

常用于获取服务器上的某个资源

(在浏览器中直接输入 URL 回车或点击浏览器收藏夹中的链接,此时浏览器就会发送出一个 GET 请求)

特点:

GET 请求的 body 一般是空的

POST 方法

POST:

用于提交用户输入的数据给服务器(如登录页面)

POST 请求的 header 里面有若干个键值对

POST一般把数据放到Body中

GET和POST区别

GET 用于从服务器获取数据,POST 客户端给服务器提交数据

GET 请求可以被缓存,可以被浏览器保存到收藏夹中;POST 请求不能被缓存

GET只能传输文本数据,也可以传输二进制数据,只不过针对二进制数据进行 urlencode,转码后 就可以放到 url 中

POST 可以传输文本数据,也可以传输二进制数据

扩充(其他方法)


6. HTTP 响应(Response)

6.1 认识 “状态码”(status code)

200 OK

200 OK(表示访问成功)

404 Not Found

表示没有找到资源(发送请求的URL在服务器中未找到)

403 Forbidden

表示访问被拒绝(有的页面需要用户有一点的权限才可以进行访问)

405 Method Not Allowed

表示访问的服务器不能支持请求中的方法或者不能使用该请求中的方法(请求的方法不支持)

500 Internal Server Error

表示服务器出现内部错误(一般是服务器的代码执行过程中遇到了一些特殊的情况,造成服务器崩溃可能会产生这个状态码 ,检查一下自己的代码)

302 Move temporarily

表示临时重定向

301 Moved Permanently

表示永久重定向,当浏览器收到这种响应时,后续的请求都会被自动改成新的地址

6.2 认识 响应"报头"(Header)

响应报头的基本格式和请求报头的格式基本一致,下面介绍下响应报头的 Content-Type 参数

text/html

表示数据格式是 HTML

text/css

表示数据格式是 CSS

application/javascript

表示数据各式是 JavaScript

application/json

表示数据格式是 JSON

Action:HTTP 请求的 URL

Method:HTTP 请求的方法(GET 或 POST 方法)

Content-Type

HOST 的值表示服务器主机的地址和端口

Content-Length 表示body的数据长度,长度单位是字节

Content-Type 表示body的数据格式

三种请求数据格式

application/x-www-form-urlencoded

这是 form 表单提交的数据格式,此时 body 的格式就类似于 query string(是键值对的结构,键值对之间使用 & 分割,键与值之间使用 = 分割

multipart/form-data

这是 form 表单提交的数据格式(需要在 from 标签上加上

enctyped=“multipart/form-data”),通常用于 HTML 提交图片或者文件

Application/Json

body 数据为 json 格式,用一个 { } 括住里面有多个键值对,键值对之间使用逗号分割,键和值之间使用冒号分割


7. 通过form 表单构造 HTTP 请求

7.1 发送 GET 请求4edc953e2c684bbe819ffa954c899c08.png

7.2 发送 POST 请求

4edc953e2c684bbe819ffa954c899c08.png

4edc953e2c684bbe819ffa954c899c08.png

4edc953e2c684bbe819ffa954c899c08.png


目录
相关文章
|
5月前
|
人工智能 网络协议 Linux
MCP 协议: Streamable HTTP 是最佳选择
随着AI应用变得越来越复杂并被广泛部署,原有的通信机制面临着一系列挑战。近期MCP仓库的PR #206引入了一个全新的Streamable HTTP传输层替代原有的HTTP+SSE传输层。本文将详细分析该协议的技术细节和实际优势。
3055 100
|
4月前
|
数据采集 数据可视化 API
QUIC协议优化:HTTP/3环境下的超高速异步抓取方案
本文介绍了一种基于QUIC和HTTP/3的异步爬虫方案,用于抓取知乎热榜数据并生成趋势图。通过HTTPX与aioquic结合实现高性能连接复用,配合代理IP绕过反爬限制,提取标题、热度等信息。利用Python代码示例展示了异步抓取流程,并借助Matplotlib绘制话题热度变化图表。分析显示突发热点生命周期短,而深度话题热度更稳定。此方案可优化内容运营策略,快速捕捉潜在爆款话题。
184 4
QUIC协议优化:HTTP/3环境下的超高速异步抓取方案
|
5月前
|
人工智能 Java API
MCP协议重大升级,Spring AI Alibaba联合Higress发布业界首个Streamable HTTP实现方案
本文由Spring AI Alibaba Contributor刘军、张宇撰写,探讨MCP官方引入的全新Streamable HTTP传输层对原有HTTP+SSE机制的重大改进。文章解析Streamable HTTP的设计思想与技术细节,并介绍Spring AI Alibaba开源框架提供的Java实现,包含无状态服务器模式、流式进度反馈模式等多种场景的应用示例。同时,文章还展示了Spring AI Alibaba + Higress的完整可运行示例,分析当前实现限制及未来优化方向,为开发者提供参考。
|
2月前
|
缓存 监控 搜索推荐
301重定向实现原理全面解析:从HTTP协议到SEO最佳实践
301重定向是HTTP协议中的永久重定向状态码,用于告知客户端请求的资源已永久移至新URL。它在SEO中具有重要作用,能传递页面权重、更新索引并提升用户体验。本文详解其工作原理、服务器配置方法(如Apache、Nginx)、对搜索引擎的影响及最佳实践,帮助实现网站平稳迁移与优化。
443 68
|
1月前
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
343 2
|
2月前
|
存储 网络协议 安全
HTTP 协议及会话跟踪机制详解
本文详解了 HTTP 协议的核心知识,包括其定义(超文本传输协议,基于 TCP,规定客户端与服务器通信规则)及与 HTTPS 的区别(安全性、端口、资源消耗)。 介绍了 GET 与 POST 请求的差异(参数限制、安全性、应用场景),以及 Restful 风格(通过 URL 定位资源,请求方式决定操作)。列举了常见 HTTP 状态码(如 200 成功、404 资源未找到),对比了转发与重定向的区别(服务器端一次请求 vs 客户端两次请求)。 还阐述了会话跟踪机制:Cookie 基于客户端存储,通过Set-Cookie和Cookie头实现,安全性较低;Session 基于服务端存储,依赖 C
239 1
|
1月前
|
缓存 网络协议 UED
深度解析HTTP协议从版本0.9至3.0的演进和特性。
总的来说,HTTP的演进是互联网技术不断发展和需求日益增长的结果。每一次重要更新都旨在优化性能,增进用户体验,适应新的应用场景,而且保证了向后兼容,让互联网的基础架构得以稳定发展。随着网络技术继续进步,我们可以预期HTTP协议在未来还会继续演化。
339 0
|
2月前
|
XML 安全 网络架构
深度对比SOAP与HTTP协议:详细理解它们的工作原理和差异
在设计服务和系统交云策略时,考虑到上述差异是至关重要的。SOAP适合需要高安全性、可靠性和事务支持的企业级应用。而HTTP适合Web界面浏览、RESTful服务和需要快速响应的轻量级通信。根据具体需求和上下文,开发者可以选择合适的协议以实现最优的系统性能和用户体验。
300 0
|
3月前
|
缓存
HTTP协议深度剖析:常见请求头信息讲解
这就是HTTP请求头背后的工作原理,希望通过比作“邮差”和“标签”,可以让你对这个繁琐技术更有感触,更得心应手。尽管这些信息可能很琐碎,但了解了它们的含义和工作方式,就等于揭开了HTTP协议神秘的面纱,掌控了网络交流的核心。你还等什么,赶快动手尝试一下吧!
131 17