【HTTP】GET 和 POST 的区别

GET 和 POST 的区别

首先:

GET 和 POST 没有本质区别, 具体来说, GET 的使用场景可替换为 POST,POST 使用的场景也可以替换为 GET.

  1. 语义上的区别:

    GET 通常用来获取数据, POST 通常用来上传数据.

    现状是 GET 也经常用来上传数据, POST 也经常用来获取数据.

  2. 数据存放的位置不同:

    GET 没有 body, GET 通过 query string 向服务器传递数据,

    POST 有 body, POST 通过 body 向服务器传递数据,但是 POST 无 query string.

  3. 幂等性:

    幂等: 每次相同的输入, 得到的结果是否是确定的.

    不幂等: 每次相同的输入, 得到的输出结果是不确定的.

    GET 请求是幂等的, 而 POST 请求是不幂等的.

  4. 是否被缓存:

    缓存就是把结果记录, 所以缓存的前提就是结果是幂等的, 这样记录的结果就有用,

    下次访问时就不用再真正的访问服务器, 直接访问缓存, 节省了访问的开销.

    不是幂等的话, 记录结果是没有意义的, 所以如果不是幂等的就不应该去记录.

    因此 GET 可以被缓存, POST 不会被缓存.

注意: HTTP 标准文档中并没有限制 URL 的长度, 所以说数据的长度范围不能作为 POST 和 GET 的区别.

相关推荐
星恒讯工业路由器3 小时前
5G FWA技术演进与趋势
网络·5g·信息与通信·4g·5g fwa·3gpp规范·fwa趋势
星夜夏空995 小时前
网络编程(1)
服务器·网络
上海云盾-小余6 小时前
中小站点防护避坑:低价高防服务存在的各类安全短板剖析
网络·爬虫·安全·ddos
X7x58 小时前
跨厂商路由引入(重发布)实战指南:华为、华三、思科的逻辑差异与配置避坑
网络协议·信息与通信·信号处理·实施路由引入
数据知道8 小时前
邮件安全实战:SPF/DKIM/DMARC 配置与钓鱼绕过
网络·安全·web安全·网络安全·邮件安全
猫头_8 小时前
AI 流式传输工程指南:有了 EventSource 为何还要 Fetch?
javascript·http·llm
玩转4G物联网8 小时前
FS800DTU 新品上线|免费使用 DMP 设备管理平台,支持远程批量配置 & OTA 升级
物联网·网络协议·tcp/ip·云平台·核心板·fs800dtu·iot管理平台
王莎莎-MinerU8 小时前
MCP 解决的是工具接入,科研 Agent 还缺的是科学证据接口标准化
开发语言·网络·人工智能·深度学习·pdf·c#·php
Chloeis Syntax9 小时前
JAVAEE初阶 --- 构造HTTP请求
网络·网络协议·http·postman
砚凝霜9 小时前
软考网络工程师|第 1 章 计算机网络基础 完整备考笔记
网络·笔记·计算机网络