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

    刷新/后退按钮

    GET后退按钮/刷新无害,POST数据会被重新提交(浏览器应该告知用户数据会被重新提交)。
    书签
    GET书签可收藏,POST为书签不可收藏。
    缓存
    GET能被缓存
    缓存是针对URL来进行缓存的,GET请求由于其参数是直接加在URL上-的,一种参数组合就有一种URL的缓存,可以根据参数来进行一一对应,重复请求是幂等的(不论请求多少次,结果都一样);
    POST不能缓存
    而POST请求的URL没有参数,每次请求的URL都相同,数据体(HTTPBody)可能不同,无法一一对应,所以缓存没有意义
    编码
    GET编码类型application/x-www-form-url,POST编码类型encodedapplication/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码
    参数保留
    GET历史参数保留在浏览器历史中。POST参数不会保存在浏览器历史中。
    数据长度
    GET对数据长度有限制,当发送数据时,GET 方法向 URL 添加数据;URL的长度是受限制的(URL 的最大长度是 2048 个字符)。POST无限制。
    数据类型
    GET只允许 ASCII 字符。POST没有限制。也允许二进制数据。
    安全性
    与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。在发送密码或其他敏感信息时绝不要使用 GET !POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。
    可见性
    GET的数据在 URL 中对所有人都是可见的。POST的数据不会显示在 URL 中。
    GET与POST方法实例:
    ```
    GET /books/?sex=man&name=Professional HTTP/1.1
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)
    Gecko/20050225 Firefox/1.0.1Connection: Keep-Alive
    ```
    ```
    POST / HTTP/1.1Host:www.wrox.com
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)
    Gecko/20050225 Firefox/1.0.1
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 40Connection: Keep-Alive
    ```
    效率
    GET的意思是『得』,从服务器获取数据(也可以上传数据,参数就是),效率较高
    POST的意思是『给』,但可以向服务器发送数据和下载数据,效率不如GET
  • 相关阅读:
    javascript第三方组件
    Object中的wait,notify,notifyAll基本使用(转)
    java基础
    RocketMQ
    java消息队列
    java消息队列怎么用
    java抽象类的使用
    java内部类理解使用
    随笔
    Tomcat服务器解析“GET /JavaWebDemo1/1.jsp HTTP/1.1”
  • 原文地址:https://www.cnblogs.com/Makeprogresstogether/p/8026324.html
Copyright © 2011-2022 走看看