org.apache.commons.httpclient
public interface HttpMethod
HttpMethod interface represents a request to be sent via a
HTTP connection
and a corresponding response.
Since: 1.0
Version: $Revision: 480424 $ $Date: 2006-11-29 06:56:49 +0100 (Wed, 29 Nov 2006) $
Method Summary | |
---|---|
void | abort()
Aborts the execution of the HTTP method.
|
void | addRequestHeader(String headerName, String headerValue)
Adds the specified request header, not overwriting any previous value.
|
void | addRequestHeader(Header header)
Adds the specified request header, not overwriting any previous value.
|
void | addResponseFooter(Header footer)
Add a footer to this method's response.
|
int | execute(HttpState state, HttpConnection connection)
Executes this method using the specified HttpConnection and
HttpState .
|
boolean | getDoAuthentication()
Returns true if the HTTP method should automatically handle HTTP
authentication challenges (status code 401, etc.), false otherwise
|
boolean | getFollowRedirects()
Returns true if the HTTP method should automatically follow HTTP redirects
(status code 302, etc.), false otherwise.
|
AuthState | getHostAuthState()
Returns the target host authentication state
|
HostConfiguration | getHostConfiguration()
Gets the host configuration for this method. |
String | getName()
Obtains the name of the HTTP method as used in the HTTP request line,
for example "GET" or "POST".
|
HttpMethodParams | getParams()
Returns HTTP protocol parameters associated with this method.
|
String | getPath()
Returns the path of the HTTP method.
|
AuthState | getProxyAuthState()
Returns the proxy authentication state
|
String | getQueryString()
Returns the query string of this HTTP method.
|
Header | getRequestHeader(String headerName)
Gets the request header with the given name.
|
Header[] | getRequestHeaders()
Returns the current request headers for this HTTP method. |
Header[] | getRequestHeaders(String headerName)
Returns the request headers with the given name. |
byte[] | getResponseBody()
Returns the response body of the HTTP method, if any, as an array of bytes.
|
InputStream | getResponseBodyAsStream()
Returns the response body of the HTTP method, if any, as an InputStream.
|
String | getResponseBodyAsString()
Returns the response body of the HTTP method, if any, as a String.
|
Header | getResponseFooter(String footerName)
Return the specified response footer. |
Header[] | getResponseFooters()
Returns the response footers from the most recent execution of this request.
|
Header | getResponseHeader(String headerName)
Returns the specified response header. |
Header[] | getResponseHeaders()
Returns the response headers from the most recent execution of this request.
|
Header[] | getResponseHeaders(String headerName)
Returns the response headers with the given name. |
int | getStatusCode()
Returns the status code associated with the latest response.
|
StatusLine | getStatusLine()
Returns the Status-Line from the most recent response for this method,
or null if the method has not been executed.
|
String | getStatusText()
Returns the status text (or "reason phrase") associated with the latest
response.
|
URI | getURI()
Returns the URI for this method. |
boolean | hasBeenUsed() |
boolean | isRequestSent()
Returns true if the HTTP has been transmitted to the target
server in its entirety, false otherwise. |
boolean | isStrictMode()
Returns the value of the strict mode flag.
|
void | recycle()
Recycles the HTTP method so that it can be used again.
|
void | releaseConnection()
Releases the connection being used by this HTTP method. |
void | removeRequestHeader(String headerName)
Removes all request headers with the given name.
|
void | removeRequestHeader(Header header)
Removes the given request header.
|
void | setDoAuthentication(boolean doAuthentication)
Sets whether or not the HTTP method should automatically handle HTTP
authentication challenges (status code 401, etc.)
|
void | setFollowRedirects(boolean followRedirects)
Sets whether or not the HTTP method should automatically follow HTTP redirects
(status code 302, etc.)
|
void | setParams(HttpMethodParams params)
Assigns HTTP protocol parameters for this method.
|
void | setPath(String path)
Sets the path of the HTTP method.
|
void | setQueryString(String queryString)
Sets the query string of the HTTP method.
|
void | setQueryString(NameValuePair[] params)
Sets the query string of this HTTP method. |
void | setRequestHeader(String headerName, String headerValue)
Sets the specified request header, overwriting any
previous value.
|
void | setRequestHeader(Header header)
Sets the specified request header, overwriting any
previous value.
|
void | setStrictMode(boolean strictMode)
Defines how strictly the method follows the HTTP protocol specification.
|
void | setURI(URI uri)
Sets the URI for this method.
|
boolean | validate()
Returns true the method is ready to execute, false otherwise.
|
Parameters: headerName the header's name headerValue the header's value
See Also: addRequestHeader getRequestHeader removeRequestHeader
Parameters: header the header
See Also: addRequestHeader getRequestHeader removeRequestHeader
Note: This method is for internal use only and should not be called by external clients.
Parameters: footer the footer to add
Since: 2.0
HttpConnection
and
HttpState
.
Parameters: state the state
information to associate with this method connection the connection
used to execute
this HTTP method
Returns: the integer status code if one was obtained, or -1
Throws: IOException If an I/O (transport) error occurs. Some transport exceptions can be recovered from. HttpException If a protocol exception occurs. Usually protocol exceptions cannot be recovered from.
Returns: true if authentication challenges will be processed automatically, false otherwise.
Since: 2.0
See Also: HttpMethod
Returns: true if the method will automatically follow HTTP redirects, false otherwise
Deprecated: no longer applicable
Gets the host configuration for this method. The configuration specifies the server, port, protocol, and proxy server via which this method will send its HTTP request.Returns: the HostConfiguration or null
if none is set
Returns: the name of this method
Returns: the path of the HTTP method, in URL encoded form
Returns: the query string in URL encoded form, without a leading '?'.
See Also: (NameValuePair[])
setQueryString
Parameters: headerName the header name
Returns: the header
addRequestHeader
.
If there are multiple request headers with the same name (e.g. Cookie
),
they will be returned as multiple entries in the array.
Returns: an array containing all of the request headers
See Also: addRequestHeader addRequestHeader
Parameters: headerName the name of the headers to be returned.
Returns: an array of zero or more headers
Since: 3.0
null
is returned. Note that this method does not propagate I/O exceptions.
If an error occurs while reading the body, null
will be returned.
Returns: The response body, or null
if the
body is not available.
Throws: IOException if an I/O (transport) problem occurs
null
is returned. Additionally, null
may be returned
if HttpMethod has been called or
if this method was called previously and the resulting stream was closed.
Returns: The response body, or null
if it is not available
Throws: IOException if an I/O (transport) problem occurs
String
using the
character encoding specified in the response's Content-Type header, or
ISO-8859-1 if the response did not specify a character set.
Note that this method does not propagate I/O exceptions.
If an error occurs while reading the body, null
will be returned.
Returns: The response body converted to a String
, or null
if the body is not available.
Throws: IOException if an I/O (transport) problem occurs
Parameters: footerName The name of the footer.
Returns: The response footer.
Returns: an array containing the response footers in the order that they appeared in the response. If the response had no footers, an empty array will be returned.
Parameters: headerName The name of the header to be returned.
Returns: The specified response header. If the repsonse contained multiple instances of the header, its values will be combined using the ',' separator as specified by RFC2616.
Returns: A newly-created array containing all of the response headers, in the order in which they appeared in the response.
Parameters: headerName the name of the headers to be returned.
Returns: an array of zero or more headers
Since: 3.0
Returns: The status code from the most recent execution of this method. If the method has not yet been executed, the result is undefined.
null
if the method has not been executed.
Returns: the status line, or null
if the method has not been executed
Since: 2.0
Returns: The status text from the most recent execution of this method. If the method has not yet been executed, the result is undefined.
Returns: the URI for this method
Throws: URIException if a URI cannot be constructed
executed
,
but not recycled
.
Returns: true if the method has been executed, false otherwise
Returns: true if the request has been sent, false otherwise
Deprecated: Use HttpParams to exercise a more granular control over HTTP protocol strictness.
Returns the value of the strict mode flag.Returns: true if strict mode is enabled, false otherwise
See Also: HttpMethod
Deprecated: no longer supported and will be removed in the future version of HttpClient
Recycles the HTTP method so that it can be used again. Note that all of the instance variables will be reset once this method has been called. This method will also release the connection being used by this HTTP method.
After this method is called, HttpMethod will return
null
, and HttpMethod and HttpMethod
may return null
.
Parameters: headerName the header name
Parameters: header the header
Since: 3.0
Parameters: doAuthentication true to process authentication challenges automatically, false otherwise.
Since: 2.0
See Also: getDoAuthentication
Parameters: followRedirects true if the method will automatically follow redirects, false otherwise.
Parameters: path The path of the HTTP method. The path is expected to be URL encoded.
Parameters: queryString the query to be used in the request, with no leading '?' character
See Also: getQueryString (NameValuePair[])
Parameters: params An array of NameValuePair
s to use as the query string.
The name/value pairs will be automatically URL encoded and should not
have been encoded previously.
See Also: getQueryString setQueryString (NameValuePair[], String)
Parameters: headerName the header's name headerValue the header's value
See Also: setRequestHeader getRequestHeader removeRequestHeader
Parameters: header the header to be set
See Also: setRequestHeader getRequestHeader removeRequestHeader
Deprecated: Use HttpParams to exercise a more granular control over HTTP protocol strictness.
Defines how strictly the method follows the HTTP protocol specification. (See RFC 2616 and other relevant RFCs.) In the strict mode the method precisely implements the requirements of the specification, whereas in non-strict mode it attempts to mimic the exact behaviour of commonly used HTTP agents, which many HTTP servers expect.Parameters: strictMode true for strict mode, false otherwise
See Also: isStrictMode
Parameters: uri URI to be set
Throws: URIException if a URI cannot be set
Since: 3.0
Returns: true if the method is ready to execute, false otherwise.