File size: 1,287 Bytes
befd7da |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
accept-language-parser
======================
[](https://travis-ci.org/opentable/accept-language-parser) [](http://badge.fury.io/js/accept-language-parser) 
Parses the accept-language header from an HTTP request and produces an array of language objects sorted by quality.
dependencies: none
installation:
```
npm install accept-language-parser
```
parse usage:
```
var parser = require('accept-language-parser');
var languages = parser.parse('en-GB,en;q=0.8');
console.log(languages);
```
Output will be:
```
[
{
code: "en",
region: "GB",
quality: 1.0
},
{
code: "en",
region: undefined,
quality: 0.8
}
];
```
Output is always sorted in quality order from highest -> lowest. as per the http spec, omitting the quality value implies 1.0.
pick usage:
```
var parser = require('accept-language-parser');
var language = parser.pick(['fr-CA', 'fr-FR', 'fr'], 'en-GB,en-US;q=0.9,fr-CA;q=0.7,en;q=0.8');
console.log(language);
```
Output will be:
```
"fr-CA"
```
__Running tests__
```
npm install
grunt test
```
|