我使用$ httpProvider.interceptors来捕获401或403请求,之后我结束会话并重定向到登录页面。有一个具有超时功能的功能,我想在执行401或403响应时停止执行超时
答案 0 :(得分:1)
您可以轻松取消暂停
var myTimeout = $timeout(function() {}, 1000);
// Check http status code
if (someHttpCode === 401){
// Stop the timeout
$timeout.cancel(myTimeout);
}
答案 1 :(得分:0)
您可以使用$timeout.cancel(timer)
停止计时器。
在文档中阅读更多相关信息: $timeout
答案 2 :(得分:-1)
您需要保存计时器,例如this:
var myVar;
function myFunction() {
myVar = setTimeout(function(){ alert("Hello"); }, 3000);
}
function myStopFunction() {
clearTimeout(myVar);
}