因此,每次我在Backbone应用程序中进行AJAX调用时,我都希望找到一个基本上脱离服务器的方法,并检查我是否使用JWT令牌进行了身份验证。这个令牌有一个到期时间,所以让我们说为了争论,到期时间是1分钟。如果我留在该页面并在30秒后上传文件,一切都很好。如果我在2分钟后上传文件,它应该检查我是否经过身份验证,看到我不是,然后将我启动回登录页面。
现在,我当然可以在我的每一个AJAX调用中添加这个调用方法(我不会在下面这样做,但这只是为了说明我的意思......)< / p>
if (isAuthenticated === true) {
$.ajax({
url: '/dosomething',
type: 'POST',
data: data,
processData: false,
cache: false,
contentType: false
}).done(function () {
//do stuff here
}).fail(function (jqXHR, textStatus) {
console.log(jqXHR);
console.log(textStatus);
});
}
问题是我有很多AJAX调用,所以我觉得通过在每个AJAX调用中添加这个方法调用来浪费时间。我对Backbone的所有细节都不太熟悉,所以我只是想知道是否有办法将我的方法绑定到所有AJAX调用?
干杯!
答案 0 :(得分:0)
你试过ajaxSend吗? https://api.jquery.com/ajaxSend/
$(document).ajaxSend(function(e, xhr) {
if (isAuthenticated === false){
xhr.abort();
}
});