public class UrlEncodedContent extends AbstractHttpContent
application/x-www-form-urlencoded
as specified in the HTML 4.0 Specification.
Sample usage:
static void setContent(HttpRequest request, Object item) { request.setContent(new UrlEncodedContent(item)); }
Implementation is not thread-safe.
Constructor and Description |
---|
UrlEncodedContent(Object data)
Initialize the UrlEncodedContent with the legacy and deprecated escapeUri encoder
|
UrlEncodedContent(Object data,
boolean useUriPathEncoding)
Initialize the UrlEncodedContent with or without the legacy and deprecated escapeUri encoder
|
Modifier and Type | Method and Description |
---|---|
static UrlEncodedContent |
getContent(HttpRequest request)
Returns the URL-encoded content of the given HTTP request, or if none return and set as content
a new instance of
UrlEncodedContent (whose getData() is an implementation of
Map ). |
Object |
getData()
Returns the key name/value data or
null for none. |
UrlEncodedContent |
setData(Object data)
Sets the key name/value data.
|
UrlEncodedContent |
setMediaType(HttpMediaType mediaType)
Sets the media type to use for the Content-Type header, or
null if unspecified. |
void |
writeTo(OutputStream out)
Writes the byte content to the given output stream.
|
computeLength, computeLength, getCharset, getLength, getMediaType, getType, retrySupported
public UrlEncodedContent(Object data)
data
- key name/value datapublic UrlEncodedContent(Object data, boolean useUriPathEncoding)
data
- key name/value datauseUriPathEncoding
- escapes the string value so it can be safely included in URI path
segments. For details on escaping URIs, see RFC 3986 - section 2.4public void writeTo(OutputStream out) throws IOException
StreamingContent
Implementations must not close the output stream, and instead should flush the output stream. Some callers may assume that the output stream has not been closed, and will fail to work if it has been closed.
out
- output streamIOException
public UrlEncodedContent setMediaType(HttpMediaType mediaType)
AbstractHttpContent
null
if unspecified.
This will also overwrite any previously set parameter of the media type (for example "charset"
), and therefore might change other properties as well.
setMediaType
in class AbstractHttpContent
public final Object getData()
null
for none.public UrlEncodedContent setData(Object data)
Overriding is only supported for the purpose of calling the super implementation and changing the return type, but nothing else.
public static UrlEncodedContent getContent(HttpRequest request)
UrlEncodedContent
(whose getData()
is an implementation of
Map
).request
- HTTP requestClassCastException
- if the HTTP request has a content defined that is not UrlEncodedContent
Copyright © 2011–2020 Google. All rights reserved.