encoding-negotiator
Install

npm i encoding-negotiator -S
Example
import negotiateEncoding from 'encoding-negotiator';
negotiateEncoding({
header: 'compress;q=0.5, gzip;q=1.0',
supportedEncodings: ['gzip', 'deflate', 'identity']
);
API
Returns the most preffered encoding available in supportedEncodings
The first
element of the supportedEncodings
array will be used in case of an asterisk.
The accept-encoding
header.
supportedEncodings
An array of the supported encodings.
prefferedEncoding (optional)
An encoding preffered by the server if the client sends multiple encodings no
quality value (for example Accept-Encoding: gzip, deflate, br
).
Benchmark
$ node benchmark/benchmark.js
negotiator x 863,149 ops/sec ±0.40% (99 runs sampled)
encoding-negotiator x 2,346,708 ops/sec ±0.53% (98 runs sampled)
Fastest is encoding-negotiator
License
MIT