【问题标题】:How do you create custom zuul filters in spring cloud如何在 Spring Cloud 中创建自定义 zuul 过滤器
【发布时间】:2015-04-12 14:46:03
【问题描述】:

我想为我正在编写的 Spring Cloud 微服务编写一些我自己的自定义 zuul 过滤器。一旦我编写了过滤器,我该如何集成它,以便底层的 netflix zuul 框架可以利用它。

【问题讨论】:

    标签: spring-cloud netflix-zuul


    【解决方案1】:

    创建一个扩展ZuulFilter@Bean。请参阅 java 配置示例here。只要 bean 与 @EnableZuulProxy 应用程序处于相同的上下文中,它就会自动被拾取。

    @Bean
    public MyFilter myFilter() {
        return new MyFilter();
    }
    

    查看过滤器示例here

    public class MyFilter extends ZuulFilter {
        //...
    }
    

    共有三种类型的过滤器:pre、route 和 post,并且每组过滤器都按该顺序执行(即所有 pre 的第一个,route 第二个和 post 的第三个)。

    【讨论】:

    • 感谢您的回答。根据请求来源添加过滤器的最正确和最可靠的方法是什么?即:我只想过滤来自某个来源的请求并将其路由到服务,但对于其他来源,我想返回错误代码。
    • 您可以访问过滤器中的请求,您可以使用它为所欲为。
    • 不是有 4 种不同的过滤器类型吗?前、路由、后和错误?
    • 是的,错误也是一种类型。请参阅 github.com/Netflix/zuul/wiki/… 了解错误的工作原理。
    • 答案中的链接现在是 404 了。
    猜你喜欢
    • 2023-03-04
    • 2018-08-06
    • 2016-05-27
    • 2015-09-12
    • 2016-07-11
    • 2019-10-22
    • 2020-04-15
    • 2018-08-23
    • 1970-01-01
    相关资源
    最近更新 更多