content

API v6.0.x

Installation:

npm: npm install @hapi/content

yarn: yarn add @hapi/content

type(header)

Generates an object containing the associated mime-type, charset and the boundary (if specified).

Content.type('application/json; some=property; and="another"');
// { mime: 'application/json' }

Content.type('text/html; charset=utf-8')
// { mime: 'text/html', charset: 'utf-8' }

Content.type('multipart/form-data; boundary=asdf');
// { mime: 'multipart/form-data', boundary: 'asdf' }

If the header is invalid (malformed) or missing required data, such as a multipart/form-data header missing its boundary, it returns an HTTP Bad Request error.

disposition(header)

Generates an object containing the details related to the Content-Disposition header for the form-data content type with support for utf8 encoding.

Content.disposition('form-data; name="file"; filename=file.jpg');
// { name: 'file', filename: 'file.jpg' }

Content.disposition('form-data; name="file"; filename*=utf-8\'en\'with%20space');
// { name: 'file', filename: 'with space' }

If the header is invalid (malformed, invalid or missing properties) or is empty/missing, it returns an explanatory error.

clipboard