MCPcopy
hub / github.com/parse-community/parse-server / buildMultipartBody

Function buildMultipartBody

spec/CloudCodeMultipart.spec.js:34–52  ·  view source on GitHub ↗
(boundary, parts)

Source from the content-addressed store, hash-verified

32}
33
34function buildMultipartBody(boundary, parts) {
35 const segments = [];
36 for (const part of parts) {
37 segments.push(`--${boundary}\r\n`);
38 if (part.filename) {
39 segments.push(
40 `Content-Disposition: form-data; name="${part.name}"; filename="${part.filename}"\r\n`
41 );
42 segments.push(`Content-Type: ${part.contentType || 'application/octet-stream'}\r\n\r\n`);
43 segments.push(part.data);
44 } else {
45 segments.push(`Content-Disposition: form-data; name="${part.name}"\r\n\r\n`);
46 segments.push(part.value);
47 }
48 segments.push('\r\n');
49 }
50 segments.push(`--${boundary}--\r\n`);
51 return Buffer.concat(segments.map(s => (typeof s === 'string' ? Buffer.from(s) : s)));
52}
53
54describe('Cloud Code Multipart', () => {
55 it('should not reject multipart requests at the JSON parser level', async () => {

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected