public class HttpRequestDecoder extends HttpObjectDecoder
ByteBuf
s解码为HttpRequest
s和HttpContent
s。
maxInitialLineLength
The maximum length of the initial line (e.g. "GET / HTTP/1.0"
) If the length of the initial line exceeds this value, a TooLongFrameException
will be raised. maxHeaderSize
The maximum length of all headers. If the sum of the length of each header exceeds this value, a TooLongFrameException
will be raised. maxChunkSize
The maximum length of the content or each chunk. If the content length exceeds this value, the transfer encoding of the decoded request will be converted to 'chunked' and the content will be split into multiple HttpContent
s. If the transfer encoding of the HTTP request is 'chunked' already, each chunk will be split into smaller chunks if the length of the chunk exceeds this value. If you prefer not to handle HttpContent
s in your handler, insert HttpObjectAggregator
after this decoder in the ChannelPipeline
.
ByteToMessageDecoder.Cumulator
ChannelHandler.Sharable
validateHeaders
COMPOSITE_CUMULATOR, MERGE_CUMULATOR
Constructor and Description |
---|
HttpRequestDecoder()
使用默认的一个新的实例
maxInitialLineLength (4096) ,
maxHeaderSize (8192) 和
maxChunkSize (8192) 。
|
HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize)
用指定的参数创建一个新的实例。
|
HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean validateHeaders) |
HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean validateHeaders, int initialBufferSize) |
Modifier and Type | Method and Description |
---|---|
protected HttpMessage |
createInvalidMessage() |
protected HttpMessage |
createMessage(java.lang.String[] initialLine) |
protected boolean |
isDecodingRequest() |
decode, decodeLast, isContentAlwaysEmpty, isSwitchingToNonHttp1Protocol, reset, userEventTriggered
actualReadableBytes, callDecode, channelInactive, channelRead, channelReadComplete, discardSomeReadBytes, handlerRemoved, handlerRemoved0, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode
channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught
ensureNotSharable, handlerAdded, isSharable
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
handlerAdded
public HttpRequestDecoder()
maxInitialLineLength (4096)
,
maxHeaderSize (8192)
和
maxChunkSize (8192)
。
public HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize)
public HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean validateHeaders)
public HttpRequestDecoder(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean validateHeaders, int initialBufferSize)
protected HttpMessage createMessage(java.lang.String[] initialLine) throws java.lang.Exception
createMessage
在课堂上
HttpObjectDecoder
java.lang.Exception
protected HttpMessage createInvalidMessage()
createInvalidMessage
在课堂上
HttpObjectDecoder
protected boolean isDecodingRequest()
isDecodingRequest
在课堂上
HttpObjectDecoder
Copyright © 2008–2018 The Netty Project. All rights reserved.