专栏首页JavaEdge带你从 HTTP/1.1 协议文档看 GET 和 POST 的区别

带你从 HTTP/1.1 协议文档看 GET 和 POST 的区别

"标准"答案

GET使用URL或Cookie传参,POST则将数据放在body中 GET的URL会有长度上的限制,POST的数据可以非常大 POST比GET安全,因为数据在地址栏上不可见

这都是一些经典面试材料抄袭的"经典"的答案,没有一点权威意义,不一提,今天我们就从官方RFC文档一探究竟

GET 和 POST 是由 HTTP 协议定义的 在HTTP协议中,Methods

和Header

是不相干的两个概念,使用哪个Method与应用层的数据如何传输是没有关系的

Methods 定义

译文 : 请求方法token是请求语义的主要来源; 它表示客户端发出此请求的目的以及客户端对成功结果的期望。 如果这些附加语义与方法不冲突,请求方法的语义可能会进一步由某些头字段的 语义进一步专门化,如果存在于请求中(第5节) method = token

HTTP 协议也没有要求,如果Method是POST数据就要放在BODY中

译文 : POST 方法请求目标资源 根据资源自身的特定语义 处理请求中包含的表示 例如,POST 用于以下功能: 1.供数据块,例如输入HTML 表格的字段的数据处理过程; 2.在公告栏,新闻组,邮件列表,博客或类似的文章组中发布消息; 3.创建一个尚未被原服务器识别的新资源; 4.将数据附加到资源的现有表示中

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HttpServletRequest小结

    该对象是有Web服务器创建的,每一次请求都会创建一次。其作用是将HTTP请求封装成一个类,供Servlet处理。

    JavaEdge
  • 突破Java面试(39)-分布式服务接口请求的顺序性

    服务 A 调用服务 B,先插入再删除。好,结果俩请求过去了,落在不同机器上,可能插入请求因为某些原因执行慢了一些,导致删除请求先执行了,此时因为没数据所以啥效果...

    JavaEdge
  • ZooKeeper分布式入门实战(三)-基本特性1 zookeeper常用命令行操作2 session的基本原理与create命令的使用3 set与delete命令的使用4 zk特性 – 理解watc

    JavaEdge
  • ServletRequest HttpServletRequest 请求方法 获取请求参数 请求转发 请求包含 请求转发与重定向区别 获取请求头字段

    实际为   HttpServletRequest  或者  ServletRequest,   两者都为接口

    noteless
  • ajaxSetup设置Ajax请求的默认值

    ajaxSetup() 方法为将来的 AJAX 请求设置默认值。 语法 $.ajaxSetup({name:value, name:value, ... }) ...

    用户1055830
  • 昨天深夜小程序的大新闻你真读懂了嘛?

    前言:昨天晚上最大的新闻莫过于微信发布的公告:微信小程序开通内嵌网页功能 & 小程序可关联公众号提升至500个。这简直就是深夜炸弹,一大波小程序开发者开始躁动了...

    连胜
  • 【小家Java】Servlet规范之---请求(request):Servlet中如何获取POST请求参数?(使用getParameter())

    request对象封装了来自客户端的所有请求信息。在HTTP协议中,客户端发给服务端的所有信息都是通过request对象的请求头和请求体来传送的。

    BAT的乌托邦
  • 网页服务器HTTP响应状态-HTTP状态码

    沈唁
  • 网站服务器错误代码介绍

    FHYC
  • 使用.Net发电子邮件小结

    电子邮件是通过互联网发出去的,互联网中传输层协议有TCP/IP协议,邮件服务在基于TCP/IP底层协议之上的应用层实现SMTP、POP3、IMAP4等协议,通过...

    小蜜蜂

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动