HTML part:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>File Upload</title>
</head>
<body>
<form action="http://localhost:3500/"
method="post"
enctype="multipart/form-data"
>
<input type="file" name="avatar" id="">
<button type="submit">Submit</button>
</form>
<script src="script.js"></script>
</body>
</html>
NODEJS part
const express=require("express");
const app=express();
const multer=require('multer');
const path=require("path");
// storage
const storage=multer.diskStorage({
destination:(req,file,cb)=>{
cb(null,"./uploads")
},
filename:(req,file,cb)=>{
const fileExt=path.extname(file.originalname);
const fileName=file.originalname.replace(fileExt,"")
.toLowerCase().split(" ").join("-")+"-"+Date.now()
cb(null,fileName+fileExt);
}
})
const upload=multer({
storage:storage,
limits:{
fileSize:1000000
},
fileFilter:(req,file,cb)=>{
if(file.mimetype==="image/jpeg" ||file.mimetype==="image/png" || file.mimetype==="image/jpg"){
cb(null,true)
}
else{
cb(null,false)
}
}
});
app.post("/",upload.single("avatar"),(req,res)=>{
res.send("Hello World!");
})
app.listen(3500,()=>{
console.log("Server is running at port "+3500);
})
Comments
Post a Comment