Skip to content


HTTP Upload is used to consume files posted as multipart request.

Basic Usage

/* eslint-env node, dirigible */

var upload = require("http/v4/upload");
var request = require("http/v4/request");
var response = require("http/v4/response");

if (request.getMethod() === "POST") {
    if (upload.isMultipartContent()) {
        var fileItems = upload.parseRequest();
        for (i = 0; i < fileItems.size(); i++) {
            var fileItem = fileItems.get(i);
            if (!fileItem.isFormField()) {
                response.println("File Name: " + fileItem.getName());
                response.println("File Bytes (as text): " + String.fromCharCode.apply(null, fileItem.getBytes()));
            } else {
                 response.println("Field Name: " + fileItem.getFieldName());
                 response.println("Field Text: " + fileItem.getText());
    } else {
        response.println("The request's content must be 'multipart'");
} else if (request.getMethod() === "GET") {
    response.println("Use POST request.");



Function Description Returns
isMultipartContent() Returns true if the HTTP request contains files content and false otherwise boolean
parseRequest() Returns a HttpFileItems object by parsing the HTTP request HttpFileItems


Function Description Returns
get(index) The HttpFileItem object by the index HttpFileItem
size() The size of the list of HttpFileItem objects HttpFileItem
Function Description Returns
getContentType() The HttpFileItem's data content type string
getName() The HttpFileItem's name string
getSize() The HttpFileItem's size long
getBytes() Return the HttpFileItem's content as byte array array of byte
getText() Return the HttpFileItem's content as string string
getInputStream() Return the input stream of the HttpFileItem's content streams.InputStream
isFormField() Whether the HttpFileItem represents a form field boolean
getFieldName() The HttpFileItem's field name string