const path = require("path"); const etag = require("etag"); const getContentTypeHeader = require("../utils/getContentTypeHeader"); function serveStaticFile(req, res) { const tags = ["file"]; const ext = path.extname(req.entry.name).substr(1); if (ext) { tags.push(`${ext}-file`); } res .set({ "Content-Length": req.entry.size, "Content-Type": getContentTypeHeader(req.entry.contentType), "Cache-Control": "public,max-age=31536000", // 1 year "Last-Modified": req.entry.lastModified, ETag: etag(req.entry.content), "Cache-Tag": tags.join(",") }) .send(req.entry.content); } module.exports = serveStaticFile;