• get和post的区别


    第一种说法:

           get是用于获取数据的;post一般用于将数据发给服务器之用。

    第二种说法:最普遍的答案--------(这只是HTML标准对HTTP协议的用法有约定。)

          1、GET使用url或Cookie传参。而POST将数据放在BODY中。

         2、GET的URL会有长度上的限制,而POST的数据则可以非常大。

         3、POST比GET更安全,因为数据在地址栏上不可见。

    正确的是:GET和POST与数据如何传递没有关系。GET和POST是有HTTP协议定义的。在HTTP协议中,Method和Data(URL,Body,Header)是正交的两个概念,也就是说,使用哪个Method与应用层的数据如何传输是没有相互关系的。

          HTTP没有要求,如果Method是POST数据就要放在BODY中。也没有要求,如果Method是GET,数据(参数)就一定要放在URL中而不能放在BODY中。

    现代的Web Server都是支持GET中包含BODY这样的请求。虽然这种请求不可能从浏览器发出,但是现在的Web Server又不是只给浏览器用,已经完全超出了HTML服务器的范畴。

         HTTP协议对GET和POST都没有对长度的限制,HTTP协议明确地指出了,HTTP头和body都没有长度的要求,而对于URL长度上的限制,主要有两方面的原因:

      1. 浏览器。因为早期的浏览器会对URL长度做限制。(行内人士认同:IE对URL长度会限制在2048个字符内)

     2. 服务器。URL太长,对服务器处理也是一种负担。原本一个会话的没有多少数据,现在如果有人恶意的构造几个几M大小的URL,并不停地访问你的服务器。服务器的最大并发数显然会下降。另一种攻击方式是,把告诉服务器Content-Length是一个很大的数,然后只给服务器发一点数据

    安全不安全跟GET、POST是没有关系的。

         

           

  • 相关阅读:
    15、TSA数据上传(https://www.ncbi.nlm.nih.gov/genbank/tsaguide/#SP)
    14、SRA数据上传
    14、批量处理文件
    .net mvc 利用分部视图局部刷新.
    观察者模式(Observer)
    内存和性能
    DOM中的事件对象(event)
    HTML事件处理程序
    惰性载入函数
    Comet之SSE(Server
  • 原文地址:https://www.cnblogs.com/wangshichuan/p/3995556.html
Copyright © 2020-2023  润新知