Heim > Fragen und Antworten > Hauptteil
是这样的,我在前端ajax如果只是判断true,否则false...
$.post(url, args, function (data) {
if (data == "false") {
alert("密码或者账号错误!请检查再输入..");
} else {
//跳到某页面
$("#info").html("验证成功,正在跳转到登陆管理页面");
window.location.href = data;
}
});
我想问,如果后端某个地方崩溃了,就是系统出现问题,那么,返回给ajax的情况会不会进入到else,进入了管理界面,也就是说,如果后端系统哪里错了,那么前端没有经过验证就可以进入管理界面了?这种情况成立吗?
如果成立,这怎么解决?
阿神2017-04-10 18:11:57
修改你的逻辑,只有成功才跳转。
对于一个合格的后端,其实这并不重要,后端理应拒绝所有未经授权的请求。
可以增加一个遇到后端返回“无权限”(例如 401)就跳转到登录页的逻辑。
ringa_lee2017-04-10 18:11:57
成立
但是,不应该是只有有管理员权限的用户才能访问到管理界面吗?
对于有管理员权限的用户,跳转到管理页面,自然没有问题;
对于没有管理员权限的用户,跳转到管理界面,Permission Denied,自然也没有问题。
综上,没有什么问题
PHPz2017-04-10 18:11:57
会的,首先你应该判断是否成功而不是判断失败,其次对于前端跳转,不管你目标页面是不是静态资源,你的数据接口都应该加上权限拦截,有心人只能进入页面但是没有权限操作数据就OK了,如果你的页面是动态页面那么就像动态数据一样也应该加上权限拦截