IE浏览器会缓存GET要求

原由

  IE阅读器会缓存网页中的GET和XHR的内容,要求体式格局是get体式格局时,IE阅读器会举行辨认。假如该get要求的url是第一次要求的话,会要求服务器,从数据库中猎取数据;假如该get要求的url不是第一次要求的话,那末该url就不会要求服务器,IE阅读器会直接从缓存中拿到上次该url猎取的数据。不管是什么插件的get体式格局要求,IE阅读器都邑如许举行处置惩罚的,从而致使数据不同步。

解决方案

1. 在get要求的url中增添随机标识(引荐)

在要求后拼接随机数或许时候戳,使两次要求的url不一致,阅读器就不会从缓存中读取数据

2. 在axios中设置header,ajax可以用setRequestHeader要领(引荐)

const api = axios.create({
    // ...
    headers: {
        'Cache-Control': 'no-cache'
    }
    // ...
})

3. 修正阅读器设置 (只能临时解决问题)

Internet选项 >> 阅读历史记录 >> 设置 >> Internet 临时文件的选项改成‘每次接见网页时’

4. 在服务端设置 header(“Cache-Control: no-cache, must-revalidate”)(看情况)

5. 改成post接口(不引荐)

    原文作者:Sherry_瑞雪
    原文地址: https://segmentfault.com/a/1190000018571990
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞