1.0.0 • Published 11 years ago
http-range v1.0.0
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 test1.0.0
11 years ago