如何强制停止http请求
http请求很多时候会受到网络阻塞、重连等原因导致响应很慢,如果此时做了一些操作,但过几秒后又响应了之前的请求,就会造成很多问题,此时我们可以使用abort()方法强制停止http请求:
let ajaxGet = $.get('URL',{id:1},
function
(data){
…
});
ajaxGet.abort();
1. $.get返回的数据类型是XMLHttpRequest,请参考手册。($.post、$.ajax、$.getJSON、$.getScript也同样);
2. XMLHttpRequest对象有abort()方法;
注意:abort()后,ajax请求立即停止,但还是会执行后面的function()。如果想避免执行其中的操作,可以在function()开始位置加判断:
let
ajaxGet = $.get(“URL”,{id:1},
function
(data){
if
(data.length == 0)
return
true
;
…
});
ajaxGet.abort();
防止重复请求:
let request;
if
(request !=
null
)
request.abort();request = $.get(“URL”,{id:1},
function
(){
//do something
});
希望本文对你有所帮助!
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步