in src/SimpleWebRequest.ts [514:543]
static mapBody(sendData: SendDataType, contentType: string): SendDataType {
if (isJsonContentType(contentType)) {
if (!isString(sendData)) {
return JSON.stringify(sendData);
}
} else if (isFormContentType(contentType)) {
if (!isString(sendData) && isObject(sendData)) {
const params = sendData as Params;
return Object.keys(params)
.map(param => encodeURIComponent(param) + (params[param] ? '=' + encodeURIComponent(params[param].toString()) : ''))
.join('&');
}
} else if (isFormDataContentType(contentType)) {
if (isObject(sendData)) {
// Note: This only works for IE10 and above.
const formData = new FormData();
const params = sendData as Params;
Object.keys(params)
.forEach(param => formData.append(param, params[param]));
return formData;
} else {
assert(false, 'contentType multipart/form-data must include an object as sendData');
}
}
return sendData;
}