ModifyResponseBody GatewayFilter 工厂
您可以使用 ModifyResponseBody 过滤器在响应体发送回客户端之前对其进行修改。
| 此过滤器只能通过 Java DSL 进行配置。 |
以下清单展示了如何修改响应体 GatewayFilter
@Bean
public RouteLocator routes(RouteLocatorBuilder builder) {
return builder.routes()
.route("rewrite_response_upper", r -> r.host("*.rewriteresponseupper.org")
.filters(f -> f.prefixPath("/httpbin")
.modifyResponseBody(String.class, String.class,
(exchange, s) -> Mono.just(s.toUpperCase()))).uri(uri))
.build();
}
如果响应没有正文,则 RewriteFilter 会传递 null。应该返回 Mono.empty() 以指定响应中缺失的正文。 |