中间件管道

自定义链式中间件组件的处理管道

Dapr 允许通过链接一系列中间件组件来定义自定义处理管道。 请求在路由到用户代码之前经过所有已定义的中间件组件,然后在返回到客户机之前,按相反顺序经过已定义的中间件,如下图中所示。

中间件 - 图1

自定义处理管道

启动后, Dapr sidecar 会构建中间件处理管道。 默认情况下,管道由 追踪中间件 和 CORS 中间件组成。 其他中间件,由 Dapr configuration 配置,按照定义的顺序添加到管道中。 管道适用于所有 Dapr API 端点,包括状态,发布/订阅,服务调用,绑定,安全性和其他。

备注: Dapr 提供 middleware.http.uppercase 预注册组件,会将请求体中的所有文本更改为大写。 您可以使用它来测试/验证您的自定义管道是否已经就绪。

以下配置示例定义了使用 OAuth 2.0 中间件 和 uppercase 中间件组件的自定义管道。 在这种情况下,在转发到用户代码之前,所有请求都将通过 OAuth 2.0 协议进行授权,并转换为大写文本。

  1. apiVersion: dapr.io/v1alpha1
  2. kind: Configuration
  3. metadata:
  4. name: pipeline
  5. namespace: default
  6. spec:
  7. httpPipeline:
  8. handlers:
  9. - name: oauth2
  10. type: middleware.http.oauth2
  11. - name: uppercase
  12. type: middleware.http.uppercase

下一步

Last modified January 1, 0001