From 3baacf5664e495f2a724e6f1064ee712d56bfa1d Mon Sep 17 00:00:00 2001 From: Suen Chun Hui Shinki <23443533+suenchunhui@users.noreply.github.com> Date: Thu, 2 Aug 2018 14:06:20 +0800 Subject: [PATCH 1/2] parse the 'name' field and return it in the result --- multipart.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/multipart.js b/multipart.js index 1efecfe..ccfc55a 100644 --- a/multipart.js +++ b/multipart.js @@ -34,7 +34,10 @@ exports.Parse = function(multipartBodyBuffer,boundary){ return o; } var header = part.header.split(';'); + var name = obj(header[1]); var file = obj(header[2]); + Object.defineProperty( file , 'name' , + { value: name, writable: true, enumerable: true, configurable: true }) var contentType = part.info.split(':')[1].trim(); Object.defineProperty( file , 'type' , { value: contentType, writable: true, enumerable: true, configurable: true }) From 85d7def9c17df4be8d95ed708b673f96e7b0bd81 Mon Sep 17 00:00:00 2001 From: Suen Chun Hui Shinki <23443533+suenchunhui@users.noreply.github.com> Date: Thu, 2 Aug 2018 14:21:21 +0800 Subject: [PATCH 2/2] small fix to unwrap object --- multipart.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/multipart.js b/multipart.js index ccfc55a..e4086cc 100644 --- a/multipart.js +++ b/multipart.js @@ -34,13 +34,17 @@ exports.Parse = function(multipartBodyBuffer,boundary){ return o; } var header = part.header.split(';'); - var name = obj(header[1]); var file = obj(header[2]); - Object.defineProperty( file , 'name' , - { value: name, writable: true, enumerable: true, configurable: true }) var contentType = part.info.split(':')[1].trim(); Object.defineProperty( file , 'type' , { value: contentType, writable: true, enumerable: true, configurable: true }) + + try { + var name = obj(header[1])['name']; + Object.defineProperty( file , 'name' , + { value: name, writable: true, enumerable: true, configurable: true }) + } catch(err) {} + Object.defineProperty( file , 'data' , { value: new Buffer(part.part), writable: true, enumerable: true, configurable: true }) return file;