org.apache.commons.httpclient.methods
Class ExpectContinueMethod
- HttpMethod
public abstract class ExpectContinueMethod
This abstract class serves as a foundation for all HTTP methods
that support 'Expect: 100-continue' handshake.
The purpose of the 100 (Continue) status (refer to section 10.1.1
of the RFC 2616 for more details) is to allow a client that is
sending a request message with a request body to determine if the
origin server is willing to accept the request (based on the request
headers) before the client sends the request body. In some cases,
it might either be inappropriate or highly inefficient for the
client to send the body if the server will reject the message
without looking at the body.
'Expect: 100-continue' handshake should be used with caution,
as it may cause problems with HTTP servers and proxies that
do not support HTTP/1.1 protocol.
abort , addCookieRequestHeader , addHostRequestHeader , addProxyConnectionHeader , addRequestHeader , addRequestHeader , addRequestHeaders , addResponseFooter , addUserAgentRequestHeader , checkNotUsed , checkUsed , execute , generateRequestLine , getAuthenticationRealm , getContentCharSet , getDoAuthentication , getEffectiveVersion , getFollowRedirects , getHostAuthState , getHostConfiguration , getMethodRetryHandler , getName , getParams , getPath , getProxyAuthState , getProxyAuthenticationRealm , getQueryString , getRecoverableExceptionCount , getRequestCharSet , getRequestHeader , getRequestHeaderGroup , getRequestHeaders , getRequestHeaders , getResponseBody , getResponseBodyAsStream , getResponseBodyAsString , getResponseCharSet , getResponseContentLength , getResponseFooter , getResponseFooters , getResponseHeader , getResponseHeaderGroup , getResponseHeaders , getResponseHeaders , getResponseStream , getResponseTrailerHeaderGroup , getStatusCode , getStatusLine , getStatusText , getURI , hasBeenUsed , isAborted , isConnectionCloseForced , isHttp11 , isRequestSent , isStrictMode , processResponseBody , processResponseHeaders , processStatusLine , readResponse , readResponseBody , readResponseHeaders , readStatusLine , recycle , releaseConnection , removeRequestHeader , removeRequestHeader , responseBodyConsumed , setConnectionCloseForced , setDoAuthentication , setFollowRedirects , setHostConfiguration , setHttp11 , setMethodRetryHandler , setParams , setPath , setQueryString , setQueryString , setRequestHeader , setRequestHeader , setResponseStream , setStrictMode , setURI , shouldCloseConnection , validate , writeRequest , writeRequestBody , writeRequestHeaders , writeRequestLine |
ExpectContinueMethod
public ExpectContinueMethod()
No-arg constructor.
ExpectContinueMethod
public ExpectContinueMethod(String uri)
Constructor specifying a URI.
uri
- either an absolute or relative URI
addRequestHeaders
protected void addRequestHeaders(HttpState state,
HttpConnection conn)
throws IOException,
HttpException
Sets the Expect header if it has not already been set,
in addition to the "standard" set of headers.
- addRequestHeaders in interface HttpMethodBase
state
- the state
information associated with this methodconn
- the connection
used to execute
this HTTP method
HttpException
- if a protocol exception occurs. Usually protocol exceptions
cannot be recovered from.
getUseExpectHeader
public boolean getUseExpectHeader()
Use HttpMethodParams
Returns true if the 'Expect: 100-Continue' handshake
is activated. The purpose of the 'Expect: 100-Continue'
handshake to allow a client that is sending a request message
with a request body to determine if the origin server is
willing to accept the request (based on the request headers)
before the client sends the request body.
- true if 'Expect: 100-Continue' handshake is to
be used, false otherwise.
hasRequestContent
protected abstract boolean hasRequestContent()
Returns true if there is a request body to be sent.
'Expect: 100-continue' handshake may not be used if request
body is not present
setUseExpectHeader
public void setUseExpectHeader(boolean value)
Use HttpMethodParams
Activates 'Expect: 100-Continue' handshake. The purpose of
the 'Expect: 100-Continue' handshake to allow a client that is
sending a request message with a request body to determine if
the origin server is willing to accept the request (based on
the request headers) before the client sends the request body.
The use of the 'Expect: 100-continue' handshake can result in
noticable peformance improvement for entity enclosing requests
(such as POST and PUT) that require the target server's
authentication.
'Expect: 100-continue' handshake should be used with
caution, as it may cause problems with HTTP servers and
proxies that do not support HTTP/1.1 protocol.
Copyright (c) 1999-2005 - Apache Software Foundation