我将Laravel 5与AngularJS一起用于一个项目,这样就可以将Laravel用作API,而API路由在Laravel中,而客户端路由则在AngularJS (app.js)中。
是否可以使用Laravel中间件来保护AngularJS路由,例如,我希望它在角登录表单页面路由上使用RedirectIfAuthenticated中间件,以便人们在登录时不能访问该页面,但据我所知,中间件通常是在Laravel控制器中指定的,该控制器没有角侧路由的逻辑--因此出现了问题。
所以问题是,我是否可以使用中间件,或者我必须发出一个角度发送一个get请求,询问laravel用户是否在每个页面上登录?那不是不太安全吗?
发布于 2015-07-11 22:27:27
最后,我做的是在登录时创建一个客户端cookie,以便跟踪用户是否为了用户体验而登录(隐藏信息,在视图呈现之前重定向),并使用Laravel中间件来保护API调用,以确保用户不能在服务器上从API上交互或获取信息,并在用户更改cookie以谎报登录状态时确保其安全。
或者,您也可以在每个页面加载之前向服务器发送一个请求,而不是cookie检查,但这会增加相当多的开销,而且并不更安全--据我所知,因为检查用户是否登录的API调用也只是为了UX目的,而恶意用户也可以删除该调用的javascript。
https://stackoverflow.com/questions/30857248
复制相似问题