Files
SnowLuma/.pnpm-store/v11/files/8f/186ee51b62d8462f2916fcafec9a96be429c5e6a236ec0061e8c398263b36e241b78b586b508f871d89c089f71a7fc602b13ae87836b249bf7f11adcbb5a89
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

70 lines
2.3 KiB
Plaintext

# content-type
[![NPM version][npm-image]][npm-url]
[![NPM downloads][downloads-image]][downloads-url]
[![Build status][build-image]][build-url]
[![Build coverage][coverage-image]][coverage-url]
[![License][license-image]][license-url]
Create and parse HTTP `Content-Type` header.
## Installation
```sh
npm install content-type
```
## API
```js
const contentType = require("content-type");
```
### contentType.parse(string, options?)
```js
const obj = contentType.parse("image/svg+xml; charset=utf-8");
```
Parse a `Content-Type` header. This will return an object with the following properties (examples are shown for the string `'image/svg+xml; charset=utf-8'`):
- `type`: The media type. Example: `'image/svg+xml'`.
- `parameters`: An object of the parameters in the media type (parameter name is always lower case). Example: `{charset: 'utf-8'}`.
The parser is lenient and does not error. You should validate `type` and `parameters` before trusting them.
#### Options
- `parameters` (default: `true`): Set to `false` to skip parameters.
### contentType.format(obj)
```js
const str = contentType.format({
type: "image/svg+xml",
parameters: { charset: "utf-8" },
});
```
Format an object into a `Content-Type` header. This will return a string of the content type for the given object with the following properties (examples are shown that produce the string `'image/svg+xml; charset=utf-8'`):
- `type`: The media type. Example: `'image/svg+xml'`.
- `parameters`: An optional object of the parameters in the media type. Example: `{charset: 'utf-8'}`.
Throws a `TypeError` if the object contains an invalid type or parameter names.
## License
[MIT](LICENSE)
[npm-image]: https://img.shields.io/npm/v/content-type
[npm-url]: https://npmjs.org/package/content-type
[downloads-image]: https://img.shields.io/npm/dm/content-type
[downloads-url]: https://npmjs.org/package/content-type
[build-image]: https://img.shields.io/github/actions/workflow/status/jshttp/content-type/ci.yml?branch=master
[build-url]: https://github.com/jshttp/content-type/actions/workflows/ci.yml?query=branch%3Amaster
[coverage-image]: https://img.shields.io/codecov/c/gh/jshttp/content-type
[coverage-url]: https://codecov.io/gh/jshttp/content-type
[license-image]: http://img.shields.io/npm/l/content-type.svg?style=flat
[license-url]: LICENSE