下面列出了怎么用org.springframework.boot.web.reactive.server.ReactiveWebServerFactory的API类实例代码及写法,或者点击链接到github查看源代码。
/**
* Since we're impersonating a {@code Zipkin} server we need to support the same set of features.
* One of the features is request compression, which we handle here by adding a {@link HttpContentDecompressor} to the {@code Netty} pipeline.
*/
@Bean
public ReactiveWebServerFactory reactiveWebServerFactory() {
NettyReactiveWebServerFactory factory = new NettyReactiveWebServerFactory();
factory.addServerCustomizers(builder -> builder
.tcpConfiguration(tcpServer -> {
return tcpServer.doOnConnection(connection -> connection.addHandler("decompressor", new HttpContentDecompressor()));
}));
return factory;
}
private static void runServer(ReactiveWebServerFactory factory,
HttpHandler httpHandler,
Consumer<WebServer> validator) {
final WebServer server = factory.getWebServer(httpHandler);
server.start();
try {
validator.accept(server);
} finally {
server.stop();
}
}
@Bean
public ReactiveWebServerFactory reactiveWebServerFactory(){
return new NettyReactiveWebServerFactory();
}
private static void runEchoServer(ReactiveWebServerFactory factory,
Consumer<WebServer> validator) {
runServer(factory, EchoHandler.INSTANCE, validator);
}