Demo of multipart form/file uploading with hapi.js
.
npm install
npm run setup
npm run server
Then ...
npm run test
... or try:
curl --form file=@data.csv \
--form firstName=Melvin \
--form lastName=Mooney \
http://localhost:8080/submit
Other multipart/form-data
demos:
I finally get how to to receive multiple text and files here the code:
const Home = {
files: {
relativeTo: Path.join(__dirname, '../static/src')
},
handler: (req, res) => {
var data = req.payload;
for(var i = 0; i < Object.keys(data).length; i++){
if (data.hasOwnProperty('file-'+i)){
var g = "file-"+i;
var name = data[g].hapi.filename;
console.log(name);
var path = Path.join(__dirname, '../uploadFiles/'+name);
var file = Fs.createWriteStream(path);
};
//Root Loading
const Root = {
files: {
relativeTo: Path.join(__dirname, '../static/src')
},
handler: (req, res) => {
res.file('index.html');
}
}
module.exports = [
{ method: 'GET', path:'/{static*}', config: Static },
{ method: 'POST', path: '/home', config: Home },
{ method: 'GET', path: '/', config: Root }
]