function Mime(req, res, next){ var pathObj = url.parse(req.url, true) var mimeType = mime.lookup(pathObj.pathname) console.log(mimeType) res.setHeader('content-type', mimeType) next() }
FS.readFile(fileObj.path, (err, fileData) => { s3.putObject({ Bucket: CONFIG.awsConfig.bucket, Key: fileName, Body: fileData, ContentType: mime.lookup(fileName) }, (err, data) => { err ? reject(err): resolve(data); }); });
function isVideo(file) { return (mime.lookup(file) || '').startsWith('video/') }
function mimeFromPath ( path ) { var mType = mimeTypes.lookup( path ) if ( mType == null ) { console.error( 'No mime type found', path ) } return mType }
multer({ storage: multer.diskStorage({ destination: path.join(__dirname, "../public/files/image"), filename: (req, file, cb)=>{ crypto.pseudoRandomBytes(4, (err, raw)=>{ const mimeType = mime.lookup(file.originalname); // throw away any extension if provided const nameSplit = file.originalname.split(".").slice(0, -1); // nameSplit.pop(); // replace all white spaces with - for safe file name on different filesystem const name = nameSplit.join(".").replace(/\s/g, "-"); cb(null, raw.toString("hex") + name + "." + mime.extension(mimeType)); }); }, }), })
fileInfoServices.service('type', function (path) { let type = String(mime.lookup(path.toString())) return type }, 'path')
/** * Uploads a file to s3 * @param {string} file * @param {string} [prefix = ''] - s3 prefix to upload the file to */ async function uploadFile (s3Client, file, prefix = '') { const content = await fs.readFile(file) const uploadParams = { Key: urlJoin(prefix, path.basename(file)), Body: content, ACL: 'public-read', // s3 misses some mime types like for css files ContentType: mime.lookup(path.extname(file)) } return s3Client.upload(uploadParams).promise() }
_fetchThumbnailSupplier(file, options) { const mime = options.mimetype || mimetypes.lookup(file); let Supplier; if (!mime) { throw new E.UnknownFiletypeError(file, undefined, "Unable to probe mimetype from filename"); } if (this._thumbSuppliers.has(mime)) { Supplier = this._thumbSuppliers.get(mime); } else if (this._thumbSuppliers.has(mime.replace(/(.+\/)(.+)/, "$1*"))) { // regex to replace application/json -> application/* Supplier = this._thumbSuppliers.get(mime.replace(/(.+\/)(.+)/, "$1*")); } else { throw new E.UnknownFiletypeError(file, mime, "FileType has no associated ThumbnailSupplier"); } return new Supplier(options); }
/** * Returns the MIME type by file path. * * @param {any} p The (file) path. * * @return {string} The mime type. */ export function getMimeType(p: any): string { p = toStringSafe(p) .trim(); switch (path.extname(p)) { case '.js': return 'text/javascript'; case '.ts': return 'text/plain'; } const MIME_TYPE = mimeTypes.lookup(p); return false !== MIME_TYPE ? MIME_TYPE : 'application/octet-stream'; }
const fakeManifest = (filenames, uri, success, error) => { if (filenames) { fs.readFile(path.join(__dirname, 'manifest.tpl'), 'utf8', (err, source) => { if (err) { if (error) { error(err); } else { dialog.showErrorBox('Something happened while preparing the images :\'(', err); } } const files = filenames.map(filename => ({ file: filename, dimensions: sizeOf(filename), mime: mime.lookup(filename), })); const label = filenames.map(filename => path.basename(filename)).join(', '); const template = Handlebars.compile(source); success(template({ files, uri, label })); return files; // makes eslint happy }); } else { error(); } }
function isAudio(file) { return (mime.lookup(file) || '').startsWith('audio/') }
multer({ storage: multer.diskStorage({ destination: path.join(__dirname, "../public/files/image"), filename: (req, file, cb)=>{ crypto.pseudoRandomBytes(4, (err, raw)=>{ const mimeType = mime.lookup(file.originalname); // throw away any extension if provided const nameSplit = file.originalname.split(".").slice(0, -1); // nameSplit.pop(); // replace all white spaces with - for safe file name on different filesystem const name = nameSplit.join(".").replace(/\s/g, "-"); cb(null, raw.toString("hex") + name + "." + mime.extension(mimeType)); }); }, }), })
multer({ storage: multer.diskStorage({ destination: path.join(__dirname, 'files/'), filename: function (req, file, cb) { crypto.pseudoRandomBytes(4, function (err, raw) { const mime_type = mime.lookup(file.originalname); // throw away any extension if provided const nameSplit = file.originalname.split(".").slice(0,-1); //nameSplit.pop(); // replace all white spaces with - for safe file name on different filesystem const name = nameSplit.join(".").replace(/\s/g,'-'); cb(null, raw.toString('hex') + name + '.' + mime.extension(mime_type)); }); } }) })
multer({ storage: multer.diskStorage({ destination: path.join(__dirname, "../public/files/image"), filename: (req, file, cb)=>{ crypto.pseudoRandomBytes(4, (err, raw)=>{ const mimeType = mime.lookup(file.originalname); // throw away any extension if provided const nameSplit = file.originalname.split(".").slice(0, -1); // nameSplit.pop(); // replace all white spaces with - for safe file name on different filesystem const name = nameSplit.join(".").replace(/\s/g, "-"); cb(null, raw.toString("hex") + name + "." + mime.extension(mimeType)); }); }, }), })
multer({ storage: multer.diskStorage({ destination: path.join(__dirname, "../public/files/image"), filename: (req, file, cb)=>{ crypto.pseudoRandomBytes(4, (err, raw)=>{ const mimeType = mime.lookup(file.originalname); // throw away any extension if provided const nameSplit = file.originalname.split(".").slice(0, -1); // nameSplit.pop(); // replace all white spaces with - for safe file name on different filesystem const name = nameSplit.join(".").replace(/\s/g, "-"); cb(null, raw.toString("hex") + name + "." + mime.extension(mimeType)); }); }, }), })