详解HTTP请求:get方法和post方法的区别

在讨论get方法和post方法的区别时,我们经常会提到两点: 
1、get传送的数据量较小,不能大于2KB,而post传送的数据量较大,一般被默认为不受限制; 
2、get安全性非常低,但是post安全性较高; 
究其根本,为什么呢?就需要提到http报文以及http报文的格式。 
首先我们先看一下HTTP请求报文的通用格式:

技术分享

在《计算机网络——自顶向下方法》一书中提到很关键的两句话: 
使用get方法时实体主体为空,而使用post方法时才使用。 
HTML表单经常使用GET方法,将输入数据(在表单字段)传送到正确的URL; 
这句话结合上面那个HTTP请求报文的通用格式就可以解释为什么“get传送的数据量较小,不能大于2KB,而post传送的数据量较大,一般被默认为不受限制”; 
至于安全性的问题,是因为get方法将数据直接附在URL的后面,自然安全系数低,而post方法将数据封装在报文实体中,而报文的传递会有加密等方法来保证其安全性,所以其安全性自然很高。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。