【发布时间】:2012-02-25 19:30:10
【问题描述】:
我用的是netty3.3版本, 我想阅读我收到的 HTTP 请求的正文。 如何通过 NETTY 3.3 实现。
任何人都可以帮助我。
【问题讨论】:
我用的是netty3.3版本, 我想阅读我收到的 HTTP 请求的正文。 如何通过 NETTY 3.3 实现。
任何人都可以帮助我。
【问题讨论】:
只需使用:
((HttpMessage) e.getMessage()).getContent();
参见 [1]。
[1]http://netty.io/docs/stable/api/org/jboss/netty/handler/codec/http/HttpMessage.html
【讨论】:
在您的 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") 会给身体。
【讨论】: