2019.1

Table Of Contents
Input
The NodeJS Server Input task does not, by itself, capture any files. Neither does it directly
wait for requests to be received. Actually, it is the NodeJS service that receives the requests
and places them in a specific location on the drive. When a request is received, the NodeJS
Server Input polls that location and finds the requests and all attachments. It will always pick up
the "oldest" request received first.
The request can contain one or more files, one being an XML file containing the request
information as well as any GET, POST, PUT or DELETE variables that were received within
this request. Other files are POST or PUT attachments.
The NodeJS Server Input task supports basic content-types (multipart/form-data, application/x-
www-urlencoded, and application/octet-stream) as well as raw body content-types:
l text/plain (.txt)
l application/xml, text/xml (.xml)
l text/html (.html)
l application/xhtml+xml (.xhtml)
l text/css (.css)
l text/csv (.csv)
l application/json (.json)
l application/javascript (.js)
Processing
Depending on the options chosen in the NodeJS Server Input task properties, the task may
choose to ignore some of the files. For example, using the "Do not include XML envelope"
means that only the POST attachments will be used in the process; the XML file will be
discarded. Attachments are always saved on disk in a specific location, which is accessible
either directly in the XML or directly as a data file through the "Loop each attachment as data
file" option.
How arrays in input data are interpreted
When the names of Form inputs in an incoming POST request contain two pairs of square
brackets: [..][..], the data are interpreted as an array. The value between the first pair of square
brackets is expected to consist of two parts, separated by an underscore (e.g. row_0). The first
Page 276