zoukankan      html  css  js  c++  java
  • get与post的区别

    GET与POST的区别浅谈

    (1) get把请求的数据放在URL上,即HTTP协议头上,其格式为:以?分割URL和传输数据,参数之间使用&符号连接。数据如果是英文字母或数字则原样发送,若是空格,则转换成+,若是中文或者是其他字符,则把字符串使用BASE64,“%”加上“字符串的16进制ASCII码”。    

         post会把数据存放在HTTP的包体(request body)。

    (2)get提交的数据最大是2K(原则上url长度无限制,但是大多数浏览器会限制url在2k个字节)。

        post理论上传输数据的大小理论上没有限制。实际中IIS4中最大的传输量为80k,IIS5中为100k

    (3)get产生一个TCP数据包,浏览器会把http  header和data一并发送出,服务器响应200。

        post产生两个TCP数据包,浏览器先发送header,服务器返回100  continue,浏览器在发送data,服务器响应200 ok(返回数据)。

    (4)get在浏览器中回退时是无害的,post会再次提交请求。

    (5)get请求会被浏览器主动缓存,而post基本不会。

    (6)get请求只能进行url编码,而post支持多种编码方式。

    (7)get参数会被完整的记录在浏览器历史记录中,而post参数不会被保留

    综上所述,post不容易外泄参数,保证数据在出函数过程中的安全,但是因为其运行速度比get慢,所以在选用get与post方式时,需要比较其优劣。

  • 相关阅读:
    CSS样式—绝对定位(absolute)与相对定位(relative)的区别(图示)
    firefox与IE透明度(opacity)设置区别
    nopCommerce学习之架构(三)
    nopCommerce学习之程序包(四)
    Hadoop 部署
    nopCommerce学习之汉化(二)
    PetShop 首页
    nopCommerce学习之安装配置(一)
    C# 中ToString()的用法
    对象的当前状态使该操作无效
  • 原文地址:https://www.cnblogs.com/wawjandcsws/p/10474477.html
Copyright © 2011-2022 走看看