<!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></title>
<style>
#result{
width: 200px;
height: 100px;
border: solid 1px red;
}
</style>
</head>
<body>
<div id="result"></div>
<button>点击发送</button>
<button>点击取消</button>
<script>
const btns = document.querySelectorAll('button');
let xhr = null;
let isSending = false;
btns[0].onclick = function(){
if(isSending) xhr.abort();
xhr = new XMLHttpRequest();
isSending = true;
xhr.open('GET','http://127.0.0.1:8000/delay');
xhr.send();
xhr.onreadystatechange = function(){
if(xhr.readyState === 4){
isSending = false;
}
}
}
btns[1].onclick = function(){
xhr.abort();
}
</script>
</body>
</html>
const express = require('express');
const app = express();
app.get('/server',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
response.send('HEELO AJAX -2');
});
app.all('/server',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
response.send('HEELO AJAX POST');
});
app.all('/json-server',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
const data = {
name:'baidu',
age:'23'
};
let str =JSON.stringify(data);
response.send(str);
});
app.get('/ie',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
response.send('HEELO IE -2');
});
app.get('/delay',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
setTimeout(() => {
response.send('HEELO Delay');
},3000)
});
app.listen(8000,()=>{
console.log("服务启动中,8000端口监听中....");
});