java.lang.Object
org.eclipse.jetty.http.MultiPart.AbstractContentSource
org.eclipse.jetty.http.MultiPartFormData.ContentSource
org.eclipse.jetty.client.MultiPartRequestContent
- All Implemented Interfaces:
Closeable,AutoCloseable,Request.Content,org.eclipse.jetty.io.Content.Source
public class MultiPartRequestContent
extends org.eclipse.jetty.http.MultiPartFormData.ContentSource
implements Request.Content
A Request.Content for form uploads with the "multipart/form-data"
content type.
Example usage:
MultiPartRequestContent multiPart = new MultiPartRequestContent();
multiPart.addPart(new MultiPart.ContentSourcePart("field", null, HttpFields.EMPTY, new StringRequestContent("foo")));
multiPart.addPart(new MultiPart.PathPart("icon", "img.png", HttpFields.EMPTY, Path.of("/tmp/img.png")));
multiPart.close();
ContentResponse response = client.newRequest("localhost", connector.getLocalPort())
.method(HttpMethod.POST)
.body(multiPart)
.send();
The above example would be the equivalent of submitting this form:
<form method="POST" enctype="multipart/form-data" accept-charset="UTF-8">
<input type="text" name="field" value="foo" />
<input type="file" name="icon" />
</form>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.eclipse.jetty.http.HttpFieldscustomizePartHeaders(org.eclipse.jetty.http.MultiPart.Part part) Methods inherited from class org.eclipse.jetty.http.MultiPart.AbstractContentSource
addPart, close, demand, fail, getBoundary, getLength, getPartHeadersMaxLength, read, setPartHeadersMaxLengthMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.jetty.io.Content.Source
demand, fail, fail, getLength, read, rewind
-
Constructor Details
-
MultiPartRequestContent
public MultiPartRequestContent() -
MultiPartRequestContent
-
-
Method Details
-
getContentType
- Specified by:
getContentTypein interfaceRequest.Content- Returns:
- the value of the
Content-Typeheader for the request content, such astext/html;charset=utf-8orapplication/json, ornullto use the value fromHttpClient.getDefaultRequestContentType()
-
customizePartHeaders
protected org.eclipse.jetty.http.HttpFields customizePartHeaders(org.eclipse.jetty.http.MultiPart.Part part) - Overrides:
customizePartHeadersin classorg.eclipse.jetty.http.MultiPartFormData.ContentSource
-