Spring WebFlux 响应式编程与 Web 应用安全实践
1. Spring WebFlux 基础组件
Spring WebFlux 是 Spring 框架 5 引入的新模块,用于构建响应式 Web 应用。以下是一些核心组件的介绍:
- HandlerFunction :这是一个函数式接口,用于处理服务器请求。其定义如下:
@FunctionalInterface
public interface HandlerFunction<T extends ServerResponse> {
Mono<T> handle(ServerRequest request);
}
- ServerRequest :代表服务器端的 HTTP 请求。可以使用多种方法从输入的 HTTP 请求中检索信息,例如:
HttpMethod method = request.method();
String path = request.path();
String id = request.pathVariable("id");
Map<String, String> pathVariables = request.pathVariables();
Optional<String> email = request.queryParam("email");
URI uri = reques