Как прочитать тело HTTP-запроса, используя Netty? - PullRequest
2 голосов
/ 03 февраля 2012

Я использую версию netty3.3, я хочу прочитать текст HTTP-запроса, который я получил.Как это возможно через NETTY 3.3.

Может ли любое тело помочь мне.

Ответы [ 2 ]

5 голосов
/ 03 февраля 2012

В вашем реализованном классе SimpleChannelHandler переопределите метод messageReceived следующим образом:

    @Override
    public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception {
        HttpRequest request = (HttpRequest) e.getMessage();
        ChannelBuffer content = request.getContent();
        LOGGER.info("Received Message[{}][{}]", request.getUri(), content.toString("UTF-8")); // Printing the URI and message body
    }

content.toString("UTF-8") даст тело.

2 голосов
/ 03 февраля 2012

Просто используйте:

((HttpMessage) e.getMessage()).getContent();

См. [1].

[1] http://netty.io/docs/stable/api/org/jboss/netty/handler/codec/http/HttpMessage.html

...