【问题标题】:Grizzly FilterChain vs. HttpHandlerGrizzly FilterChain 与 HttpHandler
【发布时间】:2015-06-01 04:29:04
【问题描述】:

我正在努力学习灰熊。我的背景是.NET。当我阅读 Grizzly 的教程时,有几件事让我感到困惑。

我的困惑与HttpHandlerFilterChain 之间的基本区别有关。我的理解是,我们可以创建自定义过滤器,这些过滤器可以根据请求进行操作,然后调用过滤器链中的下一项。

过滤器链是一种用于处理传入请求的管道吗? HTTP 处理程序做同样的事情,但只针对 HTTP 请求,对吧?两者之间的基本区别是什么,它们在哪里结合在一起?

如果有一个图表来显示网络侦听器、过滤器链和 HTTP 处理程序,它们都可以组合在一起并处理请求。

【问题讨论】:

    标签: grizzly


    【解决方案1】:

    FilterFilterChain 是 Grizzly 框架中的核心抽象。它们用于实现任何协议,HTTP 就是其中之一。

    HttpServerHttpHandler 是更高级别的抽象。它们提供了一个类似 Servlet 的 API 来处理 HTTP 请求。 HttpServer,在底层,是建立在 FilterChain 之上的。 Filters 和 HttpHandler 表示处理为特定 URL 发送的 HTTP 请求的逻辑,您在 HttpServer 上注册 HttpHandler 时设置该请求。

    回到HttpServerFilterChain 的问题,下面是HttpServerFilterChain 外观示例:

    • HTTP 协议:TransportFilter HttpCodecFilter HttpServerFilter
    • HTTPS 协议:TransportFilter SslFilter HttpCodecFilter HttpServerFilter

    这有帮助吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-30
      • 2011-03-31
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-26
      • 2011-01-22
      相关资源
      最近更新 更多