Package Exports
- http-range
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (http-range) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
http-range
Node.js parser for Content-Range and Range HTTP header fields according to the HTTP/1.1 specifications.
Installation
$ npm install http-rangeUsage
var ContentRange = require('http-range').ContentRange;
var Range = require('http-range').Range;
// Parsing and creating 'Content-Range' header
ContentRange.prototype.parse('bytes 0-49/50'); // Content-Range: bytes 0-49/50
new ContentRange('bytes', '0-49', 50).toString(); // => bytes 0-49/50
// Parsing and creating 'Range' header
Range.prototype.parse('bytes=0-49'); // Range: bytes=0-49
new Range('bytes', '0-49'); // => bytes=0-49For more usages check the test files.
API
ContentRange Class
new ContentRange(unit, range, length)
unit{String} Usually 'bytes', but can be any tokenrange{RangeSpec|String} A RangeSpec instance, a string like '0-49' or '*' if unknownlength{Number|'*'} The total length of the full entity-body or '*' if this length is unknown or difficult to determine
Throws error if arguments are invalid.
Properties
unit{String}range{RangeSpec}length{Number|null} Null if unknown
Methods
toString()Return a valid string valueparse(input)Parse an input string. Throws error if invalid
Allowed Content-Range(s)
Content-Range: bytes 0-49/50Content-Range: bytes 0-49/*Content-Range: bytes */50Content-Range: bytes */*
Range Class
new Range(unit, ranges)
unit{String} Usually 'bytes', but can be any tokenranges{RangeSpec[]|String} An array of RangeSpec instances or a string like '0-49[,50-99][...]'
Throws error if arguments are invalid.
Properties
unit{String}ranges{RangeSpec[]}
Methods
toString()Return a valid string valueparse(input)Parse an input string. Throws error if invalid
Allowed Range(s)
Range: bytes=0-49Range: bytes=0-49,50-99,-30Range: bytes=1-Range: bytes=-50
RangeSpec Class
new RangeSpec(low, high, size)
low{Number|undefined}high{Number|undefined}size{Number|undefined} For validation only, optional
Throws error if arguments are invalid.
Properties
low{Number|undefined}high{Number|undefined}
Methods
toString()Return a valid string valueparse(input)Parse an input string. Throws error if invalid
Examples of valid ranges
*0-49-4934-
Tests
$ make test