mime-lookup
A utility library for dealing with mime-types

mime-lookup downloads mime-lookup version mime-lookup license

mime-lookup유사 패키지:
npm 다운로드 트렌드
3 년
🌟 mime-lookup의 README.md에 실시간 사용 차트를 표시하려면 아래 코드를 복사하세요.
## Usage Trend
[![Usage Trend of mime-lookup](https://npm-compare.com/img/npm-trend/THREE_YEARS/mime-lookup.png)](https://npm-compare.com/mime-lookup#timeRange=THREE_YEARS)
Cumulative GitHub Star Trend
🌟 mime-lookup의 README.md에 GitHub Stars 트렌드 차트를 표시하려면 아래 코드를 복사하세요.
## GitHub Stars Trend
[![GitHub Stars Trend of mime-lookup](https://npm-compare.com/img/github-trend/mime-lookup.png)](https://npm-compare.com/mime-lookup)
통계 세부사항
패키지
다운로드
Stars
크기
Issues
발행일
라이선스
mime-lookup33,4071-0-MIT
mime-lookup의 README

mime-lookup

Comprehensive MIME type mapping API based on broofa/node-mime module.

License

Difference from node-mime

  1. This module does not include a mime type database. Either supply your own, as described below, or include mime-db.
  2. No command line tool. Since no mime types are included this is not possible using this API only module.
  3. Mime.prototype.load has been removed to avoid dependency on Node File System.
  4. Added 'glob' function to expand mime patterns by APIs-guru.

Install

Install with npm (mime-db is optional):

npm install mime-lookup mime-db

mine-db is optional and only needed it you wish to use the mime-db mime-type database.

Contributing / Testing

npm test

API

MimeLookup(db)

This module does not include the mime types database. Either supply your own or include the mime-db. Construct a new mime type lookup service by supplying a mime type database.

Using mime-db

var MimeLookup = require('mime-lookup');
var mime = new MimeLookup(require('mime-db'));

Using your own types

var MimeLookup = require('mime-lookup');
var mime = new MimeLookup(yourDb);

The mime-type database can be formatted two ways:

Simple

{
    "text/x-some-format": ["x-sf", "x-sft", "x-sfml"],
    "application/x-my-type": ["x-mt", "x-mtt"]
}

Like mime-db

{
  "text/x-some-format": {
    "source": "iana",
    "extensions": ["x-sf", "x-sft", "x-sfml"]
  },
  "application/x-my-type": {
    "source": "apache",
    "extensions": ["x-mt", "x-mtt"]
  }
}

Note in this case only the "extensions" property is used

mime.lookup(path)

Get the mime type associated with a file, if no mime type is found application/octet-stream is returned. Performs a case-insensitive lookup using the extension in path (the substring after the last '/' or '.'). E.g.

mime.lookup('file.txt');                  // => 'text/plain'
mime.lookup('.TXT');                      // => 'text/plain'
mime.lookup('htm');                       // => 'text/html'

mime.default_type

Sets the mime type returned when mime.lookup fails to find the extension searched for

mime.extension(type)

Get the default extension for type

mime.extension('text/html');                 // => 'html'
mime.extension('application/octet-stream');  // => 'bin'

mime.charsets.lookup()

Map mime-type to charset

mime.charsets.lookup('text/plain');        // => 'UTF-8'

mime.define()

Add additional custom mime/extension mappings

mime.define({
    'text/x-some-format': ['x-sf', 'x-sft', 'x-sfml'],
    'application/x-my-type': ['x-mt', 'x-mtt'],
    // etc ...
});

mime.lookup('x-sft');                 // => 'text/x-some-format'

The first entry in the extensions array is returned by mime.extension(). E.g.

mime.extension('text/x-some-format'); // => 'x-sf'

Acknowledgements

This code is based on broofa/node-mime with additions from APIs-guru.

License

Original work Copyright (c) 2010 Benjamin Thomas, Robert Kieffer Modified work Copyright 2015 Jayson Harshbarger

MIT License