• GET和POST区别及缓存问题


    2.就是get和post区别的缓存问题。

    首先要了解什么是缓存。

    HTTP缓存的基本目的就是使应用执行的更快,更易扩展,但是HTTP缓存通常只适用于idempotent request(可以理解为查询请求,也就是不更新服务端数据的请求),这也就导致了在HTTP的世界里,一般都是对Get请求做缓存,Post请求很少有缓存。

    get多用来直接获取数据,不修改数据,主要目的就是DB的search语句的感觉。用缓存(有个代理服务器的概念)的目的就是查db的速度变快。

    post则是发送数据到服务器端去存储。类似db里的update delete和insert语句的感觉。更新db的意思。数据必须放在数据库,所以一般都得去访问服务器端。


    3.安全问题。

    get请求参数在url中,即传送的数据是在链接里面可看到,有安全问题。

    post参数不是在url里面而是在请求体中,因此安全性较get高

     

     

    4.安全问题Get请求的最大长度

    各浏览器HTTP Get请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下:

    IE6.0                :url最大长度2083个字符,超过最大长度后无法提交。
    IE7.0                :url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。
    firefox 3.0.3     :url最大长度7764个字符,超过最大长度后无法提交。
    Opera 9.52       :url最大长度7648个字符,超过最大长度后无法提交。
    Google Chrome 2.0.168   :url最大长度7713个字符,超过最大长度后无法提交。

  • 相关阅读:
    linux学习笔记(26)firewalld防火墙
    rabbitmq高可用,rabbitmq主从,rabbitmq镜像
    vmware vsphere虚拟化简介
    Spring Boot CMD 运行日志输出中文乱码
    SocketChannel支持设定参数
    Ubuntu 安装 MySQL 5.7
    CompletableFuture 使用
    SpringBoot 接口输出文件流 & Vue 下载文件流,获取 Header 中的文件名
    FileLock 多进程文件锁
    反射加缓存,解决不同的业务下调用不同的实现
  • 原文地址:https://www.cnblogs.com/kangleweb/p/10930544.html
Copyright © 2020-2023  润新知