Author: Get your knowledge here
Video: Youtube
Article: Blog Post
Developer: Sylvester Das
Author: Get your knowledge here
Video: Youtube
Article: Blog Post
Developer: Sylvester Das
| const fs = require("fs"); | |
| const path = require("path"); | |
| const stream = require("stream"); | |
| const http = require("http"); | |
| const mime = require("mime-types"); | |
| const PORT = process.env.PORT || 3000; | |
| const filePath = path.resolve("./intro.mov"); | |
| const fileName = path.parse(filePath).base; | |
| const fileSize = fs.statSync(filePath).size; | |
| const mimeType = mime.lookup(filePath); | |
| const server = http.createServer((req, res) => { | |
| res.setHeader("Content-Disposition", "attachment;filename=" + fileName); | |
| res.setHeader("Content-Type", mimeType); | |
| res.setHeader("Content-Length", fileSize); | |
| stream.pipeline(fs.createReadStream(filePath), res, (err) => { | |
| if (err) console.error(err); | |
| }); | |
| }); | |
| server.listen(PORT, () => console.log('Listening to port', PORT)); |