问答

get请求会被缓存是什么意思?缓存是后端处理的还是前端?

作者:admin 2021-09-27 我要评论

比如我有个接口,GET的 http://localhost/api 接口PHP写的,查询mysql数据库,大概语句是 select * from my_user limit 1 那么 get请求会被缓存 是什么意思? 我...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

比如我有个接口,GET的 http://localhost/api

接口PHP写的,查询mysql数据库,大概语句是 select * from my_user limit 1

那么 get请求会被缓存 是什么意思? 我每次访问这个接口如果数据更新那也不是一样的啊? 还是说需要后端处理或者前端处理?

参考: https://blog.csdn.net/qq_2709...

###

这里是数据会被前端缓存,当浏览器发了一条请求,会返回数据,浏览器会把返回的数据记录下来。

GET http://localhost/api

当你再次发送该请求的时候,浏览器并不真的再发送这条请求,而是从历史记录里把这个数据读取取出来,这叫做缓存。这是浏览器自己的决策,后端并不知道也没有收到任何请求。

防止浏览器缓存的方法是添加http头,告诉浏览器不要缓存数据,或是给一个校验。。。。等等

但是更靠谱的方法是每次都让get的数据不一样:

GET http://localhost/api?_t=时间戳

添加一个后端直接忽略的参数,然后每次都不一样,这样浏览器就认为每次都是不同的请求,就不会从历史记录里读取数据了。

###

你给的博客说的是:

get 请求可被缓存

可被缓存

可被缓存

不是

会被缓存

可被缓存意思是根据相应的 HTTP 缓存协议规则,浏览器可以达到缓存结果的目的,不是说任何 get 请求都会被浏览器缓存啊喂。

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • get请求会被缓存是什么意思?缓存是后

    get请求会被缓存是什么意思?缓存是后

  • aspose导出excel合并单元格垂直居中无

    aspose导出excel合并单元格垂直居中无

  • 如何解决进入github网站时,某些图片加

    如何解决进入github网站时,某些图片加

  • virtualbox 安装ubuntu增强功能出现问

    virtualbox 安装ubuntu增强功能出现问

腾讯云代理商
海外云服务器