fast-content-type-parse
Parse HTTP Content-Type header according to RFC 7231
Installation
$ npm install fast-content-type-parse
Usage
const fastContentTypeParse = require('fast-content-type-parse')
fastContentTypeParse.parse(string)
const contentType = fastContentTypeParse.parse('application/json; charset=utf-8')
Parse a Content-Type
header. Throws a TypeError
if the string is invalid.
It will return an object with the following properties (examples are shown for
the string 'application/json; charset=utf-8'
):
-
type
: The media type (the type and subtype, always lower case).
Example: 'application/json'
-
parameters
: An object of the parameters in the media type (name of parameter
always lower case). Example: {charset: 'utf-8'}
fastContentTypeParse.safeParse(string)
const contentType = fastContentTypeParse.safeParse('application/json; charset=utf-8')
Parse a Content-Type
header. It will not throw an Error if the header is invalid.
This will return an object with the following
properties (examples are shown for the string 'application/json; charset=utf-8'
):
-
type
: The media type (the type and subtype, always lower case).
Example: 'application/json'
-
parameters
: An object of the parameters in the media type (name of parameter
always lower case). Example: {charset: 'utf-8'}
In case the header is invalid, it will return an object
with an empty string ''
as type and an empty Object for parameters
.
Benchmarks
node benchmarks/index.js
util
fast-content-type-parse
fast-content-type-parse
content-type
busboy
Fastest is fast-content-type-parse
Credits
Based on the npm package content-type