微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax 第十节 ajax请求重复发送问题

=================服务端响应================== //引用 express const { request, response, json } = require('express'); const express = require('express');
//创建应用对象 const app = express();
//创建路由规则, // request 是对请求报文的封装 // response 是对响应报文的封装 //app.all 可以接收任意类型的请求头 app.get('/cache', (request, response) => {     //设置响应头,设置充许跨域     response.setHeader('Access-Control-Allow-Origin', '*');     setTimeout(() => {         response.send('name-xxxxx');     }, 3000);

}) // 监听端口启动服务 app.listen(8000, () => {     console.log('服务已经启动,8000端口监听中.......'); }) =================取消客户端请求重复发送==================  

 

 

<!DOCTYPE html> <html lang="en">
<head>     <Meta charset="UTF-8">     <Meta http-equiv="X-UA-Compatible" content="IE=edge">     <Meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>Document</title>     <style>         #result {             width: 200px;             height: 100px;             border: solid 1px red;         }
        .abc {             width: 200px;             height: 100px;             border: solid 1px pink;         }     </style> </head>
<body>     <button>发送请求</button> </body> <script>     const btn = document.querySelector('button');     let xhr = null;     let issending = false;
    btn.onclick = function () {         if (issending) xhr.abort();         xhr = new XMLHttpRequest();         issending = true;         xhr.open('GET', 'http://127.0.0.1:8000/cache');         xhr.send();         xhr.onreadystatechange = function () {             if (xhr.readystate == 4) {                 issending = false;             }         }     } </script>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐