目录
一、统一用户登录权限验证
1.1 自定义拦截器
1.2 将自定义拦截器加入到系统配置
1.3 统一访问前缀
二、统一异常处理
三、统一数据格式返回
一、统一用户登录权限验证
1.1 自定义拦截器
拦截器是一个普通的类,需要实现HandlerInterceptor接口并重写preHandle()方法:
1.2 将自定义拦截器加入到系统配置
addInterceptor():用来将刚才自定义的拦截器加入到系统配置中;
addPathPatterns():表示要拦截什么样的请求
excludePathPatterns():表示哪些请求可以被排除,可以不用被拦截。
1.3 统一访问前缀
同一个服务器上可能会部署多个项目,如果多个项目的url地址相同就会出问题,比如每个项目都有一个user/login接口,所以需要对一个项目的所有请求地址添加前缀来区分不同项目。
在上述AppConfig类中重写configurePathMatch()方法:
第一个参数表示要添加的前缀,第二个参数是lambda表达式,为true表示启动前缀。
二、统一异常处理
三、统一数据格式返回
统一数据格式返回需要实现ResponseBodyAdvice接口,并重写supports()方法和beforeBodyWrite()方法:
返回统一数据格式的好处:
(1) 方便前端程序猿更好的接收和解析后端返回的数据;
(2) 降低前、后端程序猿的沟通成本,按照某个格式返回即可;
(3) 有利于项目统一数据维护和修改;
(4) 有利于后端技术部门的统一规范的标准指定。