Sample code for 30+ languages & platforms
Java

Set a Multipart Part Body from BinData

See more REST Examples

Demonstrates Rest.SetMultipartBodyBd, which sets the binary body of the selected multipart part from a BinData.

The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.

Background. A multipart request is assembled part by part: the part selector chooses the part being built, header fields describe it, and a SetMultipartBody method supplies its content. The request is then sent with a multipart send or full-request method.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.BinData;
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Rest;

public class ChilkatExample {

    public static void main(String[] args) {
        Rest rest = new Rest();
        boolean bTls = true;
        boolean bAutoReconnect = true;
        try {
            rest.connect("example.com", 443, bTls, bAutoReconnect);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        // The file paths are relative to the application's current working directory.  Absolute paths
        // may also be used.  Supply the paths appropriate to your own environment.

        // Select the multipart part to build, and set its header fields.
        rest.setPartSelector("1");
        rest.addHeader("Content-Disposition", "form-data; name=\"field1\"");
        rest.addHeader("Content-Type", "image/png");

        // Set the binary body of the selected part from a BinData.
        BinData bdBody = new BinData();
        try {
            bdBody.loadFile("qa_data/image.png");
        } catch (ChilkatException e) {
            System.out.println("Failed to load the part body file.");
            return;
        }

        String responseText;
        try {
            rest.setMultipartBodyBd(bdBody);

            responseText = rest.fullRequestMultipart("POST", "/api/upload");
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        System.out.println(responseText);
    }
}