zoukankan      html  css  js  c++  java
  • Get请求与Post请求的区别

     
    首先:
      一般来说,我们发送get是希望从服务器上获取数据,post请求需要向服务器传送数据。
     
    1.  get 在浏览器回退时是无害的,post 会再次提交数据
    2.  get 产生的url 地址可以被 bookmark,post 则不可以
    3.  get 请求会被浏览器主动cache (缓存),post 则不会,除非手动设置
    4.  get 请求参数会被完整保留在浏览器历史记录里,而post中参数不会被保留
     
    5.  get 只接受ASCII 码字符,而post 没有限制
    6.  get 请求只能进行url 编码,而post 支持多种编码方式。
     
    7.  get 把请求参数放在url 上,即http协议头上,post 放在Request body请求体中。
         故get 比post 更不安全,不能用来传递敏感信息。
     
         附:get 参数放在url上,以?分割url,参数之间以&相连;英文/数字,不做改变,原样发送;
         空格转换为+;中文/其他字符,则用base64加密,即%加上“十六进制ASCII码”
     
    8. get 一般来说提交的数据最大是2k;(原则上url 长度无限制,但大多数浏览器通常都会限制url 长度在2k(2048字节byte))
        post 理论上没有限制,实际上IIS4中最大量为80k,IIS5中为100k。
     
    9. get 产生一个tcp 数据包,浏览器会把http header 和data 一并发送出去,服务器响应200(返回数据)
        post 产生两个tcp 数据包,浏览器会先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200(返回数据)
     
        附:Http 是基于tcp/ip 关于数据如何在万维网中通信的协议。所以http 的底层是tcp/ip,get 、post 的底层也是tcp/ip,
              也就是说,get、post 都是tcp 连接。
     
     
     
     
     
    ok
  • 相关阅读:
    GlusterFS-分布式存储集群部署
    keepalived+HAproxy集群部署
    LB-HAproxy负载均衡部署
    Pacemaker高可用环境实践
    Nginx-负载均衡部署
    LB-LVS常见模式NAT/DR部署
    HTTPS原理、应用
    LDAP-autofs挂载用户验证
    GPG-非对称加密
    大数据入门学习(Linux)
  • 原文地址:https://www.cnblogs.com/kingon/p/9445300.html
Copyright © 2011-2022 走看看