Ajax解决低版本的IE浏览器缓存

解决方案:
由于低版本的IE浏览器发现请求的地址和上次请求地址没有发生变化时,会自动默认加载上次的缓存。为解决此问题,我们在请求的地址后面,通过random函数拼接一个随机数。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title></title>
</head>

<style>
</style>

<body>
    <button id='btn'>发送Ajax请求</button>
    <script>
        var btn =document.getElementById('btn');
        btn.onclick=function(){
            
            //1.创建Ajax对象
            var xhr=new XMLHttpRequest();
            //2.配置Ajax对象
            //xhr.open('get','http://localhost:3000/cache');
            xhr.open('get','http://localhost:3000/cache?t='+ Math.random());
            //3.发送请求
            xhr.send();
            //4.获取服务器端响应的数据
            //低版本浏览器不支持onload事件
            xhr.onreadystatechange=function(){
              
                if(xhr.readyState==4 && xhr.status==200){
                   alert(xhr.responseText);
                }
            }

            //解决方案:
            //  在请求地址的后面添加请求参数,保证每次请求中的请求参数的值不相同
           
        }

    </script>
</body>

</html>


<!-- 
    Ajax状态码: 表示Ajax请求的过程状态,Ajax对象返回,xhr.readyState==4为正常
    Http状态码:表示请求的处理结果,是服务端返回,xhr.status==200为正常

 -->
posted @   码农阿亮  阅读(63)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2020-01-16 C#实现Excel操作——添加页签Sheet
2020-01-16 C#实现把查询出的Table作为参数更新到数据库
2020-01-16 Oracle创建Table以及对表的常用操作
2020-01-16 C#实现把String字符串转化为SQL语句中的In后接的参数
点击右上角即可分享
微信分享提示