当前位置: 首页 > news >正文

【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 的区别.

http://www.lryc.cn/news/170092.html

相关文章:

  • Unity Asset Bundle Browser 工具
  • 使用Linkerd实现流量管理:学习如何使用Linkerd的路由规则来实现流量的动态控制
  • 1462. 课程表 IV
  • QTday2
  • thrift的简单使用
  • Python实现猎人猎物优化算法(HPO)优化随机森林分类模型(RandomForestClassifier算法)项目实战
  • 2023年7月京东平板电脑行业品牌销售排行榜(京东销售数据分析)
  • HTML显示中文空格字符,emsp;一个中文字符,ensp;半个中文字符
  • Python基础指令(上)
  • Python之FastAPI返回音视频流
  • 文件名批量重命名与翻译的实用指南
  • 上海长宁来福士P2.5直径4米无边圆形屏圆饼屏圆面屏圆盘屏平面圆屏异形创意LED显示屏案例
  • Linux 企业级夜莺监控分析工具远程访问
  • react使用内联css样式的注意点
  • 优先队列PriorityQueue源码解析
  • 前端开发中常见的跨域问题及解决方案
  • (超详解)堆排序+(图解)
  • Hadoop的YARN高可用
  • C++内存检查
  • 防火墙概述及实战
  • nginx代理故障总结
  • python爬虫爬取电影数据并做可视化
  • 哈希及哈希表的实现
  • CLIP 基础模型:从自然语言监督中学习可转移的视觉模型
  • 解读性能指标TP50、TP90、TP99、TP999
  • 【无标题】mysql 截取两个,之间字符串
  • 全局的键盘监听事件
  • Qt自定义QSlider(支持水平垂直)
  • 会话控制学习
  • dweb-browser阅读