目前使用微软的MVC框架,在两个问题上有些困惑:
1.使用ajax时请求某个url地址,但该地址是需要登录后才能访问的,如果没有登录该url就会跳转到登录界面,如何处理这种url地址使用户的ajax操作能够很平滑地过渡到登录呢?
2. 如何屏蔽一个ajax请求的url呢?我不希望它能够从地址栏敲入地址来进行访问,或者我只能强制让它转到其他界面。
怎样才能是ajax请求地址更加安全?
1. 定义通用的处理方案,所有Ajax返回值统一加上例如:Isvalid这个属性,为False则跳转登录页面。
2. 记得MVC中有个Request.IsAjax 如果是false的话就表示不是Ajax调用的,这时直接跳转至登录页面即可。
if (!permissionManageService.judgePermission(url, user)) {
if (isAjaxRequest(request)) {
response.sendRedirect(WebUtils.getBasePath(request) + "/ajaxNoPermission.html");
} else {
response.sendRedirect(WebUtils.getBasePath(request) + "/noPermission.html");
}
return false;
}
我现在就被拦截了,我已经登录了,但是仍然不能返回数据,为什么呢?我应该怎么写?