.validateHeaders(false) .initialBufferSize(10)) .handle((req, resp) -> req.receive().then(resp.sendNotFound())) .tcpConfiguration(tcp -> tcp.doOnConnection(c -> {
@Test public void releaseInboundChannelOnNonKeepAliveRequest() { DisposableServer c = HttpServer.create() .port(0) .handle((req, resp) -> req.receive().then(resp.status(200).send())) .wiretap(true) .bindNow(); Flux<ByteBuf> src = Flux.range(0, 3) .map(n -> Unpooled.wrappedBuffer(Integer.toString(n) .getBytes(Charset.defaultCharset()))); Flux.range(0, 100) .concatMap(n -> HttpClient.create() .port(c.address().getPort()) .tcpConfiguration(TcpClient::noSSL) .wiretap(true) .keepAlive(false) .post() .uri("/return") .send(src) .responseSingle((res, buf) -> Mono.just(res.status().code()))) .collectList() .block(); c.disposeNow(); }
@Test public void testUserAgent() { DisposableServer c = HttpServer.create() .port(0) .handle((req, resp) -> { Assert.assertTrue("" + req.requestHeaders() .get(HttpHeaderNames.USER_AGENT), req.requestHeaders() .contains(HttpHeaderNames.USER_AGENT) && req.requestHeaders() .get(HttpHeaderNames.USER_AGENT) .equals(HttpClient.USER_AGENT)); return req.receive().then(); }) .wiretap(true) .bindNow(); createHttpClientForContextWithPort(c) .get() .uri("/") .responseContent() .blockLast(); c.disposeNow(); }
.uri("/login") .responseContent() .then()) .blockLast(Duration.ofSeconds(30));
.get("/stream", (req, res) -> req.receive() .then(res.options(op -> op.flushOnEach()) .sendString(ep.log()).then()))) .wiretap(true)
.get("/stream", (req, res) -> req.receive() .then(res.compression(true) .options(op -> op.flushOnEach()) .sendString(ep.log()).then())))