术语表
-
Route(路由): 网关的基本构建块。它由 ID、目标 URI、一组谓词和一组过滤器定义。如果聚合谓词为真,则匹配该路由。
-
Predicate(谓词): 这是一个 Spring WebMvc.fn RequestPredicate。输入类型是 Spring WebMvc.fn ServerRequest。它允许你匹配 HTTP 请求中的任何内容,例如请求头或参数。
-
Filter(过滤器): 这些是 HandlerFilterFunction 的实例。在这里,你可以在发送下游请求之前或之后修改请求和响应。过滤器也可以实现
Function<ServerRequest, ServerRequest>
,并通过 HandlerFilterFunction.ofRequestProcessor() 适配为HandlerFilterFunction
,用于“前置”过滤器。对于“后置”过滤器,可以实现BiFunction<ServerRequest,T extends ServerResponse,R extends ServerResponse>
,并通过 HandlerFilterFunction.ofResponseProcessor() 进行适配。