当我尝试在用户会话过期后进行一些$ http调用时,我遇到了一些问题。服务器端创建方法的方式是,如果请求到来且用户未经过身份验证,则会重定向到登录页面。使用JS进行调用并没有多大帮助,因为对于某些方法,它会返回登录页面的HTML标记以及其它根本不起作用的调用。我想知道为什么有些电话会回复某些电话而有些电话却没有做任何事情。
代码 - 有效的通话
$http({
url: url + $scope.ftValue,
method: 'GET'
})
.success(function (data, status, headers, config) {
//stuff on success
})
.error(function (data, status, headers, config) {
console.log("An error occured when applying the Free Text Search!");
});
打电话
$http({
url: url + '¤tFacet=' + facetName,
method: 'GET'
})
.success(function (data, status, headers, config) {
//stuff on success
})
.error(function (data, status, headers, config) {
console.log("Error during facet values extraction. Status: " + status);
});
要注意的是,唯一不同的是被调用的方法。这是无关紧要的,因为控制器有一个授权注释,并且调用甚至无法到达方法(这很好,因为对于那个工作它的人返回我的登录页面。)
我想知道什么会导致第二次调用不起作用。两者都由ng-click
指令触发。