UNPKG

@tunframework/tun

Version:

tun framework for node with typescript

219 lines (218 loc) 7.61 kB
// /** // * @internal // */ // export function _getExtByMime(mimeName: keyof typeof mimeExtMap) { // return mimeExtMap[mimeName] // } // /** // * @internal // */ // export function _getMimeByExt(ext: string) { // for (const key in mimeExtMap) { // if (Object.prototype.hasOwnProperty.call(mimeExtMap, key)) { // if (mimeExtMap[key].split(' ').indexOf(ext) > -1) { // return key // } // } // } // return null // } export const mimeExtMap = { // begin Common_types // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types 'audio/aac': 'aac', 'application/x-abiword': 'abw', 'application/x-freearc': 'arc', 'image/avif': 'avif', 'video/x-msvideo': 'avi', 'application/vnd.amazon.ebook': 'azw', 'application/octet-stream': 'bin', 'image/bmp': 'bmp', 'application/x-bzip': 'bz', 'application/x-bzip2': 'bz2', 'application/x-cdf': 'cda', 'application/x-csh': 'csh', 'text/css': 'css', 'text/csv': 'csv', 'application/msword': 'doc', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'docx', 'application/vnd.ms-fontobject': 'eot', 'application/epub+zip': 'epub', 'application/gzip': 'gz', 'image/gif': 'gif', 'text/html': 'htm html', 'image/vnd.microsoft.icon': 'ico', 'text/calendar': 'ics', 'application/java-archive': 'jar', 'image/jpeg': 'jpeg jpg', 'text/javascript': 'js mjs', 'application/json': 'json', 'application/ld+json': 'jsonld', 'audio/midi audio/x-midi': 'mid midi', // 'text/javascript': 'mjs', // JavaScript module 'audio/mpeg': 'mp3', 'video/mp4': 'mp4', 'video/mpeg': 'mpeg', 'application/vnd.apple.installer+xml': 'mpkg', 'application/vnd.oasis.opendocument.presentation': 'odp', 'application/vnd.oasis.opendocument.spreadsheet': 'ods', 'application/vnd.oasis.opendocument.text': 'odt', 'audio/ogg': 'oga', 'video/ogg': 'ogv', 'application/ogg': 'ogx', 'audio/opus': 'opus', 'font/otf': 'otf', 'image/png': 'png', 'application/pdf': 'pdf', 'application/x-httpd-php': 'php', 'application/vnd.ms-powerpoint': 'ppt', 'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'pptx', 'application/vnd.rar': 'rar', 'application/rtf': 'rtf', 'application/x-sh': 'sh', 'image/svg+xml': 'svg', 'application/x-shockwave-flash': 'swf', 'application/x-tar': 'tar', 'image/tiff': 'tif tiff', 'video/mp2t': 'ts', 'font/ttf': 'ttf', 'text/plain': 'txt', 'application/vnd.visio': 'vsd', 'audio/wav': 'wav', 'audio/webm': 'weba', 'video/webm': 'webm', 'image/webp': 'webp', 'font/woff': 'woff', 'font/woff2': 'woff2', 'application/xhtml+xml': 'xhtml', 'application/vnd.ms-excel': 'xls', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xlsx', 'application/xml': 'xml', 'application/vnd.mozilla.xul+xml': 'xul', 'application/zip': 'zip', 'video/3gpp': '3gp', 'audio/3gpp': '3gp', 'video/3gpp2': '3g2', 'audio/3gpp2': '3g2', 'application/x-7z-compressed': '7z', // end Common_types // refers: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types // Web开发中 重要的MIME类型 // 'application/octet-stream': '', // 'text/plain': 'txt', // 'text/css': 'css', // 'text/html': 'html', // 'text/javascript': 'js', // MIME类型image包含图像数据的文件。 // 子类型指定数据表示的特定图像文件格式。 // 通常只使用少量图像类型,以便在网页上使用安全 // 'image/gif': 'gif', // 'image/jpeg': 'jpg', // 'image/png': 'png', // 'image/webp': '', // 'image/svg+xml': 'svg', 'image/x-icon': 'ico', // 音频和视频类型 // WAVE容器格式的音频文件。 // 通常支持PCM音频编解码器(WAVE编解码器“1”), // 但其他编解码器具有有限的支持(如果有的话)。 'audio/wave': 'wav', // 'audio/wav': 'wav', 'audio/x-wav': 'wav', 'audio/x-pn-wav': 'wav', // 'audio/webm': '', // WebM容器格式的音频文件。Vorbis和Opus是最常见的音频编解码器。 // 'video/webm': '', // 'audio/ogg': '', // 'video/ogg': '', // 'application/ogg': '', // multipart/form-data // 将multipart/form-data已完成的HTML表单的值从浏览器发送到服务器时,可以使用该类型。 'multipart/form-data': '', // ---- colecting // 压缩文件 'application/x-rar-compressed': 'rar', // 'application/zip': 'zip', // 'application/x-7z-compressed': '7z', 'application/x-gzip': 'gz', // 专有文件类型。 // 避免使用,application/octet-stream // 因为大多数浏览器不允许为此通用MIME类型定义默认行为(如“在Word中打开”)。 // 特定类型application/vnd.mspowerpoint允许用户在他们选择的演示软件中自动打开这些文件。 'application/vnd.mspowerpoint': 'ppt', // https://developer.mozilla.org/en-US/docs/Web/HTML/Supported_media_formats // 'application/json': 'json', // 'application/pdf': 'pdf', // [MIME文件类型](https://www.cnblogs.com/zhaoyx/articles/1991511.html) // Microsoft Word // 'application/msword': 'doc', // 可执行程序 'application/octet-stream bin': 'dms lha lzh exe class', // Adobe Acrobat // 'application/pdf': 'pdf', // PostScript 'application/postscript': 'ai eps ps', // Microsoft Powerpoint 'appication/powerpoint': 'ppt', // rtf格式 'appication/rtf': 'rtf', // unix压缩文件 'appication/x-compress': 'z', // gzip // 'application/x-gzip': 'gz', // tar文档(gnu格式) 'application/x-gtar': 'gtar', // MacroMedia Flash // 'application/x-shockwave-flash': 'swf', // tar(4.3BSD) // 'application/x-tar': 'tar', // winzip // 'application/zip': 'zip', // sun/next 声音文件 'audio/basic': 'au snd', // Mpeg声音文件 // 'audio/mpeg': 'mpeg mp2', // Midi格式 'audio/x-aiff': 'mid midi rmf', // Real Audio声音 'audio/x-pn-realaudio': 'ram ra', // Real Audio插件 'audio/x-pn-realaudio-plugin': 'rpm', // Microsoft Windows声音 // 'audio/x-wav': 'wav', // 计算机图形元文件 'image/cgm': 'cgm', // COMPUSERVE GIF图像 // 'image/gif': 'gif', // JPEG图像 // 'image/jpeg': 'jpeg jpg jpe', // PNG图像 // 'image/png': 'png', // TIFF图像 // 'image/tiff': 'tiff tif', // MACINTOSH PICT图像 'image/x-pict': 'pic', // CSS风格纸 // 'text/css': 'css', // HTML文档 // 'text/html': 'html htm', // JAVASCRIPT脚本 // 'text/javascript': 'js ls mocha', // ASCII文本 // 'text/plain': 'txt', // MICROSOFT RICH TEXT 'text/richtext': 'rtx', // TAB-SEPARATED VALUE 'text/tab-separated-values': 'tsv', // VISUAL BASIC脚本 'text/vbscript': 'vbx', // SGML文本 'text/sgml': 'sgml sgm', // MPEG影像 // 'video/mpeg': 'mpeg mpg mpe', // QUICKTIME视频 'video/quicktime': 'qt mov', // WINDOWS(AVI)视频 // 'video/x-msvideo': 'avi', // Vrml 'x-video/x-vrml': 'wrl vrml' };