Как весной webflux получит весь запрос? - PullRequest
0 голосов
/ 31 октября 2018

Я отправляю запрос, длина содержимого составляет 817 , ошибка получения Размер тела равен 610, Как я могу получить все тело? Муравей, который должен обрабатывать динамический предикат по параметру!

 Flux<DataBuffer> body = exchange.getRequest().getBody();            
        AtomicReference<String> bodyRef = new AtomicReference<>();
        body.subscribe(dataBuffer -> {
            CharBuffer charBuffer = Charsets.UTF_8.decode(dataBuffer.asByteBuffer());
            DataBufferUtils.release(dataBuffer);
            bodyRef.set(charBuffer.toString());
        });

динамический предикат

            routes.route(api.getMethod() + ":" + api.getVersion(), r -> r
                        .predicate(exchange -> {  
                            //params   analyzing   :     Attributes.REQUEST_PARAMETER_METHOD                   
                            ParserUtils.parseRequest(exchange);
                           //handler ...

                            return api.getMethod().equals(exchange.getAttributes().get(Attributes.REQUEST_PARAMETER_METHOD));
                        }).uri(....)
...