Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

content

Package Overview
Dependencies
Maintainers
4
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

content - npm Package Compare versions

Comparing version 3.0.7 to 3.1.2

LICENSE.md

23

lib/index.js
'use strict';
// Load modules
const Boom = require('boom');
// Declare internals
const internals = {};

@@ -99,2 +95,8 @@

if ($1 === '__proto__') {
return 'error'; // Generate leftovers
}
let value;
if ($2) {

@@ -106,12 +108,19 @@ if (!$3) {

try {
result[$1] = decodeURIComponent($3.split('\'')[2]);
value = decodeURIComponent($3.split('\'')[2]);
}
catch (err) {
return 'error'; // Generate leftover
return 'error'; // Generate leftovers
}
}
else {
result[$1] = $4 || $5 || '';
value = $4 || $5 || '';
}
if ($1 === 'name' &&
value === '__proto__') {
return 'error'; // Generate leftovers
}
result[$1] = value;
return '';

@@ -118,0 +127,0 @@ });

{
"name": "content",
"description": "HTTP Content-* headers parsing",
"version": "3.0.7",
"version": "3.1.2",
"repository": "git://github.com/hapijs/content",
"engines": {
"node": ">=6.0.0"
},
"main": "lib/index.js",

@@ -14,5 +17,2 @@ "keywords": [

],
"engines": {
"node": ">=4.5.0"
},
"dependencies": {

@@ -26,7 +26,6 @@ "boom": "5.x.x"

"scripts": {
"test": "lab -a code -t 100 -L",
"test-tap": "lab -a code -r tap -o tests.tap",
"test-cov-html": "lab -a code -r html -o coverage.html"
"test": "lab -a code -t 100 -L -l",
"test-cov-html": "lab -a code -r html -o coverage.html -l"
},
"license": "BSD-3-Clause"
"license": "SEE LICENSE IN LICENSE.md"
}
# content
HTTP Content-* headers parsing.
HTTP Content-\* headers parsing.
[![NPM Version](https://badge.fury.io/js/content.svg)](http://badge.fury.io/js/content)
[![Build Status](https://secure.travis-ci.org/hapijs/content.svg)](http://travis-ci.org/hapijs/content)
[![Dependencies](https://david-dm.org/hapijs/content.svg)](https://david-dm.org/hapijs/content)
Lead Maintainer - [Rui Quelhas](https://github.com/ruiquelhas)
## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [`type(header)`](#typeheader)
- [`disposition(header)`](#dispositionheader)
## Installation
Install via [NPM](https://www.npmjs.org).
```
$ npm install content
```
## Usage
**content** allows to parse HTTP `Content-*` headers, currently based on the rules established in both [RFC 7231 Section 3.1.1.1](https://tools.ietf.org/html/rfc7231#section-3.1.1.1) and [RFC 6266 Section 4.1](http://tools.ietf.org/html/rfc6266#section-4.1).
### `type(header)`
Generates an object containing the associated mime-type and the boundary (if specified).
```js
Content.type('application/json; some=property; and="another"');
// { mime: 'application/json' }
Content.type('application/json; boundary=asdf');
// { mime: 'application/json', 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.
```js
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.
[![Build Status](https://travis-ci.org/hapijs/content.svg?branch=v3-commercial)](https://travis-ci.org/hapijs/content)

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc