浅析GET与POST-创新互联
1、GET、POST
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、虚拟主机、营销软件、网站建设、古塔网站维护、网站推广。两者是HTTP请求报文的方法,除此之外还有OPTION、HEAD、PUT、DELETE、TRACE、CONNECT。
GET:请求读取由URL(统一资源定位符)所标志的信息
POST:给服务器添加信息
1)根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。
(1)所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。就是说,它仅仅是获取资源信息,就像数据库查询一样,不会修改,增加数据,不会影响资源的状态。
(2)幂等的意味着对同一URL的多个请求应该返回同样的结果。
2)根据HTTP规范,POST表示可能修改变服务器上的资源的请求
2、区别与联系
1)GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连。
POST把提交的数据则放置在是HTTP包的包体中。
2)"GET方式提交的数据最多只能是1024字节",因为GET是通过URL提交数据,那么GET可提交的数据量就跟URL的长度有直接关系了。而实际上,URL不存在参数上限的问题,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、FireFox等,理论上没有长度限制,其限制取决于操作系统的支持。
注意这是限制是整个URL长度,而不仅仅是你的参数值数据长度。
理论上讲,POST是没有大小限制的,HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力。
3)获取请求参数的方法不同,例如:在ASP中,服务端获取GET请求参数用Request.QueryString,获取POST请求参数用Request.Form。
4)POST的安全性要比GET的安全性高。比如:通过GET提交数据,用户名和密码将明文出现在URL上,因为(1)登录页面有可能被浏览器缓存,(2)其他人查看浏览器的历史纪录,那么别人就可以拿到你的账号和密码了,除此之外,使用GET提交数据还可能会造成Cross-site request forgery***。
5)GET:查询字符串显示在地址栏的URL中,可见
POST:查询字符串不会显示在地址栏中,不可见
6)数据类型限制:
GET:只允许ASCII字符类型
POST:没有限制。允许二进制数据
7)GET请求能够被缓存,GET请求会保存在浏览器的浏览记录中,以GET请求的URL能够保存为浏览器书签
POST:POST请求不能被缓存下来,POST请求不会保存在浏览器浏览记录中,以POST请求的URL无法保存为浏览器书签
8)点击返回/刷新按钮:
GET:没有影响
POST:数据会重新发送(浏览器将会提示用户“数据被从新提交”)
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文名称:浅析GET与POST-创新互联
链接地址:http://pwwzsj.com/article/csipei.html