@@ -29,25 +29,26 @@ class FormData {
2929 public async getBody ( ) {
3030 let buffer = Buffer . alloc ( 0 ) ;
3131 for ( const formFile of this . files ) {
32+ if ( buffer . length > 0 ) {
33+ buffer = Buffer . concat ( [ buffer , Buffer . from ( "\r\n" , "utf-8" ) ] ) ;
34+ }
3235 let temp = `--${ boundary } \r\n` ;
3336 temp += `Content-Type: ${ formFile . contentType } \r\n` ;
3437 temp +=
3538 `Content-Disposition: form-data; name="${ formFile . name } "; filename="${ formFile . filename } "\r\n\r\n` ;
3639 buffer = Buffer . concat ( [ buffer , Buffer . from ( temp , "utf-8" ) ] ) ;
37- let fileBuffer = Buffer . alloc ( 0 ) ;
40+ let fileBuffer : Buffer ;
3841 if ( typeof formFile . content === "string" ) {
39- fileBuffer = Buffer . from ( ` ${ formFile . content } \r\n` , "utf-8" ) ;
42+ fileBuffer = Buffer . from ( formFile . content , "utf-8" ) ;
4043 } else if ( Buffer . isBuffer ( formFile . content ) ) {
41- fileBuffer = formFile . content as Buffer < ArrayBuffer > ;
44+ fileBuffer = formFile . content ;
4245 } else if ( formFile . content instanceof Blob ) {
43- fileBuffer = Buffer . from (
44- await formFile . content . arrayBuffer ( ) ,
45- ) as Buffer < ArrayBuffer > ;
46+ fileBuffer = Buffer . from ( await formFile . content . arrayBuffer ( ) ) ;
4647 } else {
4748 // NodeJS.ReadableStream
4849 fileBuffer = await stream2buffer (
4950 formFile . content as unknown as Stream ,
50- ) as Buffer < ArrayBuffer > ;
51+ ) ;
5152 }
5253 buffer = Buffer . concat ( [ buffer , fileBuffer ] ) ;
5354 }
0 commit comments