0    课程地址

https://coding.imooc.com/lesson/380.html#mid=28554

 

1    浓缩精华
1.1  4.1

该类继承自父类,但很多方法用的都是超类里的,看4.1的时候结合上节课4-6自定义过滤器一起看

 

2    个人关注
2.1  @Component和@Configuration都作为配置类有什么区别

Component 这个不是配置类,它是用来标识当前的类是 Spring Bean。Configuration 是用来标识配置类的

 

3    课程内容
3.1  4.1

 

4    代码演练
4.1  自定义Token过滤器
package com.imooc.coupon.filter;

import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;

/**
 * TokenPreFilter
 * 自定义Token过滤器,做Token相关的时候可以参考本类
 * @author 魏豆豆
 * @date 2021/6/9
 */
//标识当前类为SpringBean
@Component
//lombok注解,打印
@Slf4j
public class TokenPreFilter extends  AbstractPreZuulFilter{

    //重写方法,表示执行结果之后,参考4-6,基类 AbstractZuulFilter
    @Override
    public Object continueRun() {
        //获取request
        HttpServletRequest request = context.getRequest();
        log.info(String.format(
                "%s request to %s",request.getMethod(),request.getRequestURL().toString()
        ));
        //如果获取token为空
        if(null==request.getParameter("token")){
            log.error("token获取失败");
            return fail(450,"token获取失败");
        }
        return success();
    }

    @Override
    public int filterOrder() {
        return 0;
    }
}

 

posted on 2021-01-19 07:23  菜鸟乙  阅读(75)  评论(0编辑  收藏  举报