我有一个Ext JS应用程序,如果每次用户点击应用程序中的链接时会话无效,我想检查后端。这两个Ajax调用都在Ext.onReady中,我想清理这个代码,但我需要检查每次点击的超时,第二个Ajax调用仅在登录时被调用,如果它本身就是。
Ext.Ajax.on('requestcomplete', function(conn, response, options, options) {
if(!isSessionValid()) {
window.location.href = '?login_status=timeout';
}
});
function isSessionValid() {
Ext.Ajax.request({
url: contextRoot + '/isSessionValid.htm?alt=json',
method: 'get',
success: function(response, options) {
console.log(response);
var isValid;
var o = Ext.decode(response.responseText);
(o != loggedInUser.username) ? isValid = false : isValid = true;
return isValid;
}, failure: function(response, options) {
//console.log(response);
}
});
};
是否有未解决的问题是未定义isSessionValid()并获取我需要的数据(isValid)?