static mapBody()

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;
    }