在上篇Angular拦截器实现RESTful认证中,通过替换了Http
的提供器来拦截了Http
请求,并且重新实现ConnectionBackend
抽象类,并用它发起请求来达到了统一对请求进行拦截处理的功能。
但是那种实现存在问题:
无状态应用中Shiro登录验证的处理
在传统JSP web应用中,如果用shiro处理授权的话,通常通过FormAuthenticationFilter
来直接截取用户提交的表单,并从中取出username
、password
、rememberMe
三个参数来进行登录验证(截取的参数名可以在配置文件中手动修改)。
但是这并不适用于RESTful风格的应用,因为前端的用户验证信息是通过一个http的请求头请求发送过来的,没办法通过FormAuthenticationFilter
进行处理,所以我们需要实现自己的filter。
Angular拦截器实现REST认证
在RESTful风格的系统中,由于后端没有session等持续性状态信息,所以每次前端的请求都必须携带认证信息。
那我们就需要一个全局的统一处理,来为请求加上认证所需的信息。
以下是我的实现方法:
My New Post
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
####### 七级标题
markdown只支持6级标题,再多为无效。12$ this is a test$ Hello World!
Sraech with Google: Google
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick Start
Create a new post
|
|
More info: Writing
Run server
|
|
More info: Server
Generate static files
|
|
More info: Generating
Deploy to remote sites
|
|
More info: Deployment